summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorCristiano di Flora <cristiano.di-flora@nokia.com>2011-03-08 14:55:52 (GMT)
committerCristiano di Flora <cristiano.di-flora@nokia.com>2011-03-08 15:00:10 (GMT)
commitc0756297da324069839622217e3cb38c8a745e33 (patch)
treeeb24efd3210a2f0aa18aad7f2ae749dbfa0e0b77 /src/plugins
parentca70c91ccc11450b0e634fd6054f1497c7c2a6ed (diff)
downloadQt-c0756297da324069839622217e3cb38c8a745e33.zip
Qt-c0756297da324069839622217e3cb38c8a745e33.tar.gz
Qt-c0756297da324069839622217e3cb38c8a745e33.tar.bz2
Fix possible bearer management Crash with Panic E32USER-CBase, 69
Task-Number: QT-4652 Reviewed-by: Xizhi Zhu
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/bearer/symbian/symbianengine.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/plugins/bearer/symbian/symbianengine.cpp b/src/plugins/bearer/symbian/symbianengine.cpp
index e315d9f..f367c26 100644
--- a/src/plugins/bearer/symbian/symbianengine.cpp
+++ b/src/plugins/bearer/symbian/symbianengine.cpp
@@ -150,16 +150,15 @@ SymbianEngine::~SymbianEngine()
iConnectionMonitor.CancelNotifications();
iConnectionMonitor.Close();
-
-#ifdef SNAP_FUNCTIONALITY_AVAILABLE
- iCmManager.Close();
-#endif
-
- // CCommsDatabase destructor uses cleanup stack. Since QNetworkConfigurationManager
+
+ // CCommsDatabase destructor and RCmManager.Close() use cleanup stack. Since QNetworkConfigurationManager
// is a global static, but the time we are here, E32Main() has been exited already and
// the thread's default cleanup stack has been deleted. Without this line, a
// 'E32USER-CBase 69' -panic will occur.
CTrapCleanup* cleanup = CTrapCleanup::New();
+#ifdef SNAP_FUNCTIONALITY_AVAILABLE
+ iCmManager.Close();
+#endif
delete ipCommsDB;
delete cleanup;
}