summaryrefslogtreecommitdiffstats
path: root/clients/tde/src/app/remotemdi.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clients/tde/src/app/remotemdi.cpp')
-rw-r--r--clients/tde/src/app/remotemdi.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/clients/tde/src/app/remotemdi.cpp b/clients/tde/src/app/remotemdi.cpp
index 11ab75e..3ecf181 100644
--- a/clients/tde/src/app/remotemdi.cpp
+++ b/clients/tde/src/app/remotemdi.cpp
@@ -343,7 +343,12 @@ void RemoteMDI::childWindowCloseRequest(KMdiChildView *pWnd) {
// Give the child a chance to finish what it was doing and exit cleanly (i.e. without crashing!)
iview->closeConnections();
iview->hide();
- KMdiMainFrm::childWindowCloseRequest(pWnd);
+
+ // RAJA FIXME
+ // Executing KMdiMainFrm::childWindowCloseRequest(pWnd) here will probably cause a crash
+ // We need to call this AFTER control has been returned to the main event loop at least once
+ // This is related to my lack of proper returning to the event loop, which MUST BE FIXED
+// KMdiMainFrm::childWindowCloseRequest(pWnd); // RAJA UNCOMMENT ME
}
}
@@ -363,11 +368,11 @@ void RemoteMDI::closeSpecifiedWindow(KMdiChildView *window) {
if (window) {
// Notify the status bar of the removal of the window
statusBar()->message(i18n("%1 removed").arg(window->tabCaption()));
-
+
// We could also call removeWindowFromMdi, but it doesn't delete the
// pointer. This way, we're sure that the view will get deleted.
closeWindow(window);
-
+
// Synchronize combo box
if (m_pCurrentWindow) {
currentChanged(m_pCurrentWindow);