aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gui/TabWidget.cpp1
-rw-r--r--gui/dialog.cpp5
-rw-r--r--gui/dialog.h1
-rw-r--r--gui/object.cpp2
-rw-r--r--gui/widget.cpp1
5 files changed, 2 insertions, 8 deletions
diff --git a/gui/TabWidget.cpp b/gui/TabWidget.cpp
index dbeebc772c..a6b4eee8fb 100644
--- a/gui/TabWidget.cpp
+++ b/gui/TabWidget.cpp
@@ -71,6 +71,7 @@ void TabWidget::init() {
}
TabWidget::~TabWidget() {
+ _firstWidget = 0;
for (uint i = 0; i < _tabs.size(); ++i) {
delete _tabs[i].firstWidget;
_tabs[i].firstWidget = 0;
diff --git a/gui/dialog.cpp b/gui/dialog.cpp
index e48602a95f..c0c8d50430 100644
--- a/gui/dialog.cpp
+++ b/gui/dialog.cpp
@@ -65,11 +65,6 @@ Dialog::Dialog(const Common::String &name, bool dimsInactive_)
}
}
-Dialog::~Dialog() {
- delete _firstWidget;
- _firstWidget = 0;
-}
-
int Dialog::runModal() {
// Open up
open();
diff --git a/gui/dialog.h b/gui/dialog.h
index 7fe33fe3f4..098cf88278 100644
--- a/gui/dialog.h
+++ b/gui/dialog.h
@@ -54,7 +54,6 @@ private:
public:
Dialog(int x, int y, int w, int h, bool dimsInactive = true);
Dialog(const Common::String &name, bool dimsInactive = true);
- virtual ~Dialog();
virtual int runModal();
diff --git a/gui/object.cpp b/gui/object.cpp
index c93ee4bc9a..ec3167c9a3 100644
--- a/gui/object.cpp
+++ b/gui/object.cpp
@@ -31,10 +31,8 @@ GuiObject::GuiObject(const Common::String &name) : _firstWidget(0) {
}
GuiObject::~GuiObject() {
-/* TODO: Enable this at some point? Right now it causes crashes
delete _firstWidget;
_firstWidget = 0;
-*/
}
uint32 GuiObject::getMillis() {
diff --git a/gui/widget.cpp b/gui/widget.cpp
index a7bc7cc48b..dcf9156165 100644
--- a/gui/widget.cpp
+++ b/gui/widget.cpp
@@ -58,6 +58,7 @@ void Widget::resize(int x, int y, int w, int h) {
Widget::~Widget() {
delete _next;
+ _next = 0;
}
void Widget::draw() {