Gnats 4597: Crash clearing workspace with more than one open RuleSet Dialog [Phil, 8-22-2008, 5.1 and 5.0.2 Prerel] SEE STACK, BELOW. [1] RplDlgMgr::closeRplSet (RplObj*rplObj) ... ... ... // Delete all editors for this RplSet std::list dlgs; for (RplDlgList_t::iterator it = _rplDlgs.begin(); it != _rplDlgs.end(); { if (((*it).first != rplSet) && (((*it).first)->getSet() == rplSet)) <<--- CRASH { dlgs.push_back((*it).second); } } ... ... ... [11] RplDlgMgr::closeAllRplSetDlgs(bool /* confirmEach*/) ... ... ... for (std::list::iterator it = rplSetDlgs.begin(); it != rplSetDlgs.end(); { bool closeSuccess = (*it)->close(); <<--- CURRENT if (!closeSuccess) { _preVerifiedClose = false; return false; //--- user decided not to close } } ... ... ... [1] RplDlgMgr::closeRplSet(RplObj* rplObj=0x04b0c438) Line 861 [2] RplSetDlg::closeEvent(QCloseEvent* event=0x0012b60c) Line 358 [3] QWidget::event(QEvent* event=0x0012b60c) Line 6268 [4] QMainWindow::event(QEvent* event=0x0012b60c) Line 1180 [5] QApplicationPrivate::notify_helper(QObject* receiver=0x049ee028, QEvent ... [6] QApplication::notify(QObject* receiver=0x049ee028, QEvent* e=0x0012b60c ... [7] QCoreApplication::notifyInternal(QObject* receiver=0x049ee028, QEvent* ... [8] QCoreApplication::sendEvent(QObject* receiver=0x049ee028, QEvent* event ... [9] QWidgetPrivate::close_helper(QWidgetPrivate::CloseMode mode= CloseWithEvent) Line 5726 [10] QWidget::close() Line 5790 [11] RplDlgMgr::closeAllRplSetDlgs(bool __formal=false) Line 1139 [12] Workspace::closeAllDialogs(bool alsoDelete=true) Line 2584 [13] Workspace::clear() Line 1992 [14] Workspace::callbackHandler(CallbackType type=WS_CLEARING, CallbackData* data=0x00000000) Line 4900 [15] Workspace_allCallbacksCBNoteProc(Callback* __formal=0x03f35038, CallbackType type=WS_CLEARING, ... [16] FunctionCb::invoke(CallbackType type=WS_CLEARING, CallbackData* cbData ... [17] Root::callCallbacks(CallbackType type=WS_CLEARING, CallbackData* cbDat ... [18] SimWorkspace::clear(bool clearForTemp=false) Line 531 [19] Workspace::clearWorkspace() Line 3347 [20] Workspace::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id= ... [21] QMetaObject::activate(QObject* sender=0x03e9ada0, int from_signal_inde ... [22] QMetaObject::activate(QObject* sender=0x03e9ada0, const QMetaObject* m ... [23] QAction::activated(int _t1=-142) Line 228 [24] QAction::activate(QAction::ActionEvent event=Trigger) Line 1104 [25] QMenuPrivate::activateAction(QAction* action=0x03e9ada0, QAction::Acti ... [26] QMenu::mouseReleaseEvent(QMouseEvent* e=0x0012c4c0) Line 2041 [27] QWidget::event(QEvent* event=0x0012c4c0) Line 6124 [28] QMenu::event(QEvent* e=0x0012c4c0) Line 2135 [29] QApplicationPrivate::notify_helper(QObject* receiver=0x03dbcfb0, QEven ... [30] QApplication::notify(QObject* receiver=0x03dbcfb0, QEvent* e=0x0012c4c ... [31] QCoreApplication::notifyInternal(QObject* receiver=0x03dbcfb0, QEvent* ... [32] QCoreApplication::sendSpontaneousEvent(QObject* receiver=0x03dbcfb0, Q ... [33] QETWidget::translateMouseEvent(const tagMSG & msg={...}) Line 2678 [34] QtWndProc(HWND__* hwnd=0x001c04fc, unsigned int message=514, unsigned ... [35] 7e418734 [36] 7e418816 [37] 7e4189cd [38] 7c915b4f [39] 7c915b4f [40] 7e418a10 [41] QEventDispatcherWin32::processEvents(QFlags f ... [44] QEventLoop::exec(QFlags flags={... ... [45] QCoreApplication::exec() Line 744 [46] QApplication::exec() Line 3039 [47] rwGUIExecute() Line 140 [48] interactiveMode(int argc=1, char** argv=0x03332aa8, bool isRunAllowed= ... [49] main(int argc=1, char** argv=0x03332aa8) Line 517 [50] WinMain(HINSTANCE__* instance=0x00400000, HINSTANCE__* prevInstance=0x ... [51] WinMainCRTStartup() Line 390 --- (end) ---