Details
-
Bug
-
Resolution: Done
-
Not Evaluated
-
Qt Creator 4.7.0-beta1
-
None
Description
Version Control output pane creates only when project with VCS support opens. So, registration in outputpanemanager.cpp::g_outputPanes makes with some delay and after OutputPaneManager::init() call. As a result, g_outputPanes size and internal m_buttons size is differ and soft asserts like:
QTC_ASSERT(idx >= 0 && idx < m_buttons.size(), return);
is occurs:
SOFT ASSERT: "idx >= 0 && idx < m_buttons.size()" in file /home/hatred/programming/projects/CMakeProjectManager/qtcreator-git/src/plugins/coreplugin/outputpanemanager.cpp, line 584
when user tries to enable VCS pane from dialog.
Next workaround patch helps me, but it seems unclean:
diff --git a/src/plugins/vcsbase/vcsplugin.cpp b/src/plugins/vcsbase/vcsplugin.cpp index 8e21d1cbae..805c3425dc 100644 --- a/src/plugins/vcsbase/vcsplugin.cpp +++ b/src/plugins/vcsbase/vcsplugin.cpp @@ -130,6 +130,9 @@ bool VcsPlugin::initialize(const QStringList &arguments, QString *errorMessage) return QString(); }); + // Just touch VCS Output Pane before initialization + VcsOutputWindow::instance(); + return true; }
If patch is applicable for upstream, I can create Gerrit review.
Attachments
Issue Links
- relates to
-
QTCREATORBUG-19972 Cannot switch to VCS Output pane during permanent Application Output
- Closed