diff --git a/src/plugins/help/helpplugin.cpp b/src/plugins/help/helpplugin.cpp index 55438fa64c158a8e1a779e600b1ecabb9e03fa6c..2be35d4600482bd943a5836ac19db7ecd33a3e30 100644 --- a/src/plugins/help/helpplugin.cpp +++ b/src/plugins/help/helpplugin.cpp @@ -73,6 +73,7 @@ #include <QtCore/QTimer> #include <QtCore/QTranslator> #include <QtCore/qplugin.h> +#include <QtCore/QRegExp> #include <QtGui/QAction> #include <QtGui/QComboBox> @@ -839,7 +840,21 @@ void HelpPlugin::activateContext() "available.</center></body></html>").arg(m_idFromContext)); viewer->setSource(QUrl()); } else { - const QUrl &source = *links.begin(); + int version = 0; + const QRegExp exp("(\\d+)"); + QUrl source = *links.begin(); + foreach (const QUrl &tmp, links) { + const QString &authority = tmp.authority(); + if (authority.startsWith(QLatin1String("com.trolltech.qt"))) { + if (exp.indexIn(authority) >= 0) { + const int tmpVersion = exp.cap(1).toInt(); + if (tmpVersion > version) { + source = tmp; + version = tmpVersion; + } + } + } + } const QUrl &oldSource = viewer->source(); if (source != oldSource) { #if !defined(QT_NO_WEBKIT)