From 90bcb608f6cd705432191cca0f23b964a0ca54bd Mon Sep 17 00:00:00 2001
From: kh1 <qt-info@nokia.com>
Date: Mon, 1 Mar 2010 18:28:36 +0100
Subject: [PATCH] Suppress accessing the network for any other data.

---
 src/shared/help/helpviewer.cpp | 41 +++++++++++++++++-----------------
 1 file changed, 20 insertions(+), 21 deletions(-)

diff --git a/src/shared/help/helpviewer.cpp b/src/shared/help/helpviewer.cpp
index 4d6ecc74662..d5a9757b3e8 100644
--- a/src/shared/help/helpviewer.cpp
+++ b/src/shared/help/helpviewer.cpp
@@ -120,28 +120,27 @@ HelpNetworkAccessManager::HelpNetworkAccessManager(QHelpEngine *engine,
 {
 }
 
-QNetworkReply *HelpNetworkAccessManager::createRequest(Operation op,
-    const QNetworkRequest &request, QIODevice *outgoingData)
-{
-    const QString& scheme = request.url().scheme();
-    if (scheme == QLatin1String("qthelp") || scheme == QLatin1String("about")) {
-        const QUrl& url = request.url();
-        QString mimeType = url.toString();
-        if (mimeType.endsWith(QLatin1String(".svg"))
-            || mimeType.endsWith(QLatin1String(".svgz"))) {
-           mimeType = QLatin1String("image/svg+xml");
-        }
-        else if (mimeType.endsWith(QLatin1String(".css"))) {
-           mimeType = QLatin1String("text/css");
-        }
-        else if (mimeType.endsWith(QLatin1String(".js"))) {
-           mimeType = QLatin1String("text/javascript");
-        } else {
-            mimeType = QLatin1String("text/html");
-        }
-        return new HelpNetworkReply(request, helpEngine->fileData(url), mimeType);
+QNetworkReply *HelpNetworkAccessManager::createRequest(Operation /*op*/,
+    const QNetworkRequest &request, QIODevice */*outgoingData*/)
+{
+    const QUrl& url = request.url();
+    QString mimeType = url.toString();
+    if (mimeType.endsWith(QLatin1String(".svg"))
+        || mimeType.endsWith(QLatin1String(".svgz"))) {
+            mimeType = QLatin1String("image/svg+xml");
+    } else if (mimeType.endsWith(QLatin1String(".css"))) {
+        mimeType = QLatin1String("text/css");
+    } else if (mimeType.endsWith(QLatin1String(".js"))) {
+        mimeType = QLatin1String("text/javascript");
+    } else if (mimeType.endsWith(QLatin1String(".txt"))) {
+        mimeType = QLatin1String("text/plain");
+    } else {
+        mimeType = QLatin1String("text/html");
     }
-    return QNetworkAccessManager::createRequest(op, request, outgoingData);
+
+    const QByteArray &data = helpEngine->findFile(url).isValid()
+        ? helpEngine->fileData(url) : QByteArray("The page could not be found");
+    return new HelpNetworkReply(request, data, mimeType);
 }
 
 class HelpPage : public QWebPage
-- 
GitLab