Added appropriate delete statements.
This commit is contained in:
@ -9,6 +9,8 @@
|
||||
using namespace Dawn;
|
||||
|
||||
Scene::Scene(DawnGame *game) {
|
||||
assertNotNull(game);
|
||||
|
||||
this->game = game;
|
||||
this->nextId = 0;
|
||||
}
|
||||
@ -38,5 +40,15 @@ SceneItem * Scene::createSceneItem() {
|
||||
}
|
||||
|
||||
Scene::~Scene() {
|
||||
|
||||
auto it = this->items.begin();
|
||||
while(it != this->items.end()) {
|
||||
delete it->second;
|
||||
++it;
|
||||
}
|
||||
|
||||
auto it2 = this->itemsNotInitialized.begin();
|
||||
while(it2 != this->itemsNotInitialized.end()) {
|
||||
delete it2->second;
|
||||
++it2;
|
||||
}
|
||||
}
|
@ -9,6 +9,8 @@
|
||||
using namespace Dawn;
|
||||
|
||||
SceneItem::SceneItem(Scene *scene, sceneitemid_t id) : transform(this) {
|
||||
assertNotNull(scene);
|
||||
|
||||
this->id = id;
|
||||
this->scene = scene;
|
||||
}
|
||||
@ -53,5 +55,9 @@ void SceneItem::init() {
|
||||
}
|
||||
|
||||
SceneItem::~SceneItem() {
|
||||
std::cout << "Scene item disposed" << std::endl;
|
||||
auto it = this->components.begin();
|
||||
while(it != this->components.end()) {
|
||||
delete *it;
|
||||
++it;
|
||||
}
|
||||
}
|
@ -45,6 +45,12 @@ void UICanvas::onBackBufferResize(
|
||||
}
|
||||
|
||||
UICanvas::~UICanvas() {
|
||||
auto it = this->children.begin();
|
||||
while(it != this->children.end()) {
|
||||
delete *it;
|
||||
++it;
|
||||
}
|
||||
|
||||
this->getGame()->renderManager.getBackBuffer()->eventRenderTargetResized
|
||||
.removeListener(this, &UICanvas::onBackBufferResize)
|
||||
;
|
||||
|
Reference in New Issue
Block a user