From f707cfd834105fd0c2c74b2f17758fa3142fc47a Mon Sep 17 00:00:00 2001 From: kh1 <qt-info@nokia.com> Date: Tue, 12 Oct 2010 16:53:00 +0200 Subject: [PATCH] Fix potential crash and extra open page on initial help start. Reviewed-by: ck --- src/plugins/help/helpplugin.cpp | 13 ++++++------- src/plugins/help/openpagesmanager.cpp | 3 ++- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/plugins/help/helpplugin.cpp b/src/plugins/help/helpplugin.cpp index decb9fa9af2..f9bc0250753 100644 --- a/src/plugins/help/helpplugin.cpp +++ b/src/plugins/help/helpplugin.cpp @@ -797,17 +797,16 @@ HelpViewer* HelpPlugin::viewerForContextMode() break; } - HelpViewer *viewer = m_centralWidget->currentHelpViewer(); if (placeHolder && showSideBySide) { RightPaneWidget::instance()->setShown(true); - createRightPaneContextViewer(); - viewer = m_helpViewerForSideBar; - } else { - activateHelpMode(); - if (!viewer) - viewer = OpenPagesManager::instance().createPage(); + return m_helpViewerForSideBar; } + + activateHelpMode(); // should trigger an createPage... + HelpViewer *viewer = m_centralWidget->currentHelpViewer(); + if (!viewer) + viewer = OpenPagesManager::instance().createPage(); return viewer; } diff --git a/src/plugins/help/openpagesmanager.cpp b/src/plugins/help/openpagesmanager.cpp index ebe15cb393b..fb602b97988 100644 --- a/src/plugins/help/openpagesmanager.cpp +++ b/src/plugins/help/openpagesmanager.cpp @@ -177,7 +177,8 @@ void OpenPagesManager::setupInitialPages() CentralWidget::instance()->addPage(m_model->pageAt(i)); emit pagesChanged(); - setCurrentPage(initialPage); + setCurrentPage((initialPage >= m_model->rowCount()) + ? m_model->rowCount() - 1 : initialPage); m_openPagesSwitcher->selectCurrentPage(); } -- GitLab