From 95f740ec40b76db5892ef9c93ef35480fb6a00a7 Mon Sep 17 00:00:00 2001 From: cc9cii Date: Mon, 25 May 2015 22:28:41 +1000 Subject: [PATCH] Give CSVWorld::EditWidget::mMainWidget a chance to clean up its children. Should resolve Bug #2578. --- apps/opencs/view/world/dialoguesubview.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/apps/opencs/view/world/dialoguesubview.cpp b/apps/opencs/view/world/dialoguesubview.cpp index 2cf30dcbe..7a25a7fc1 100644 --- a/apps/opencs/view/world/dialoguesubview.cpp +++ b/apps/opencs/view/world/dialoguesubview.cpp @@ -378,6 +378,13 @@ mDocument (document) void CSVWorld::EditWidget::remake(int row) { + if (mMainWidget) + { + QWidget *del = this->takeWidget(); + del->deleteLater(); + } + mMainWidget = new QWidget (this); + for (unsigned i = 0; i < mNestedModels.size(); ++i) delete mNestedModels[i]; @@ -401,12 +408,6 @@ void CSVWorld::EditWidget::remake(int row) if (mNestedTableMapper) delete mNestedTableMapper; - if (mMainWidget) - { - QWidget *del = this->takeWidget(); - del->deleteLater(); - } - mMainWidget = new QWidget (this); QFrame* line = new QFrame(mMainWidget); line->setObjectName(QString::fromUtf8("line"));