diff options
author | hjk <hjk@qt.io> | 2017-07-20 14:43:24 +0200 |
---|---|---|
committer | hjk <hjk@qt.io> | 2017-07-20 13:50:31 +0000 |
commit | a54cba428ac3461c11cf0659c60d20503a688309 (patch) | |
tree | 8e6ea9c7e6d98dfc9802194ecbdeb25635a01550 /src/plugins/projectexplorer/appoutputpane.h | |
parent | 35c7360892c8da3684ec335eae021a18fbca3407 (diff) | |
download | qt-creator-a54cba428ac3461c11cf0659c60d20503a688309.tar.gz |
ProjectExplorer: Fix crashes on shutdown
Ensure that RunControls ramp down asynchronously.
Since RunControls now ramp down asynchronously the plugin can
only report synchronous shut down if no RunControl/OutputPane
was present.
Task-number: QTCREATORBUG-18605
Change-Id: Ib8d1f857f85c74d4f18ecb85db537121a2275668
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src/plugins/projectexplorer/appoutputpane.h')
-rw-r--r-- | src/plugins/projectexplorer/appoutputpane.h | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/src/plugins/projectexplorer/appoutputpane.h b/src/plugins/projectexplorer/appoutputpane.h index b260447ba5..fc7ac6e05e 100644 --- a/src/plugins/projectexplorer/appoutputpane.h +++ b/src/plugins/projectexplorer/appoutputpane.h @@ -88,14 +88,10 @@ public: void setBehaviorOnOutput(RunControl *rc, BehaviorOnOutput mode); bool aboutToClose() const; - bool closeTabs(CloseTabMode mode); + void closeTabs(CloseTabMode mode); QList<RunControl *> allRunControls() const; -signals: - void allRunControlsFinished(); - -public: // ApplicationOutput specifics void projectRemoved(); @@ -126,12 +122,11 @@ private: explicit RunControlTab(RunControl *runControl = nullptr, Core::OutputWindow *window = nullptr); QPointer<RunControl> runControl; - Core::OutputWindow *window; + QPointer<Core::OutputWindow> window; BehaviorOnOutput behaviorOnOutput = Flash; }; - bool isRunning() const; - bool closeTab(int index, CloseTabMode cm = CloseTabWithPrompt); + void closeTab(int index, CloseTabMode cm = CloseTabWithPrompt); bool optionallyPromptToStop(RunControl *runControl); int indexOf(const RunControl *) const; @@ -148,6 +143,7 @@ private: QWidget *m_mainWidget; TabWidget *m_tabWidget; QVector<RunControlTab> m_runControlTabs; + int m_runControlCount = 0; QAction *m_stopAction; QAction *m_closeCurrentTabAction; QAction *m_closeAllTabsAction; |