From 1be5e093170c2e464dd18a309b5d54d503bfb3aa Mon Sep 17 00:00:00 2001 From: "commit-queue@webkit.org" Date: Mon, 16 Jan 2012 14:28:27 +0000 Subject: [PATCH] [Qt] Remove references to PagePointer in the FrameNetworkingContext https://bugs.webkit.org/show_bug.cgi?id=76342 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Patch by Alexander Færøy on 2012-01-16 Reviewed by Simon Hausmann. * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::createNetworkingContext): * WebProcess/qt/QtNetworkAccessManager.cpp: (WebKit::QtNetworkAccessManager::obtainOriginatingWebPage): * WebProcess/qt/QtNetworkAccessManager.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105062 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- Source/WebKit2/ChangeLog | 13 +++++++++++++ .../WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp | 6 ------ Source/WebKit2/WebProcess/qt/QtNetworkAccessManager.cpp | 15 ++------------- Source/WebKit2/WebProcess/qt/QtNetworkAccessManager.h | 4 ++-- 4 files changed, 17 insertions(+), 21 deletions(-) diff --git a/Source/WebKit2/ChangeLog b/Source/WebKit2/ChangeLog index 7de491c..d067c73 100644 --- a/Source/WebKit2/ChangeLog +++ b/Source/WebKit2/ChangeLog @@ -1,3 +1,16 @@ +2012-01-16 Alexander Færøy + + [Qt] Remove references to PagePointer in the FrameNetworkingContext + https://bugs.webkit.org/show_bug.cgi?id=76342 + + Reviewed by Simon Hausmann. + + * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: + (WebKit::WebFrameLoaderClient::createNetworkingContext): + * WebProcess/qt/QtNetworkAccessManager.cpp: + (WebKit::QtNetworkAccessManager::obtainOriginatingWebPage): + * WebProcess/qt/QtNetworkAccessManager.h: + 2012-01-14 Dan Bernstein Crash in WebProcess at com.apple.CFNetwork: URLCredentialStorage::CreateCurrentPersistentCredentials + 298 diff --git a/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp b/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp index 3d0e222..42fee34 100644 --- a/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp +++ b/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp @@ -1439,12 +1439,6 @@ void WebFrameLoaderClient::didChangeScrollOffset() PassRefPtr WebFrameLoaderClient::createNetworkingContext() { RefPtr context = WebFrameNetworkingContext::create(m_frame); -#if PLATFORM(QT) - // We encapsulate the WebPage pointer as a property of the originating QObject. - QObject* originatingObject = context->originatingObject(); - ASSERT(originatingObject); - originatingObject->setProperty("PagePointer", QVariant::fromValue(static_cast(m_frame->page()))); -#endif return context.release(); } diff --git a/Source/WebKit2/WebProcess/qt/QtNetworkAccessManager.cpp b/Source/WebKit2/WebProcess/qt/QtNetworkAccessManager.cpp index 57b953f..178a565 100644 --- a/Source/WebKit2/WebProcess/qt/QtNetworkAccessManager.cpp +++ b/Source/WebKit2/WebProcess/qt/QtNetworkAccessManager.cpp @@ -41,25 +41,14 @@ QtNetworkAccessManager::QtNetworkAccessManager(WebProcess* webProcess) { } -QtNetworkAccessManager::QtNetworkAccessManager(QObject* parent) - : QNetworkAccessManager(parent) - , m_webProcess(0) -{ -} - WebPage* QtNetworkAccessManager::obtainOriginatingWebPage(const QNetworkRequest& request) { QObject* originatingObject = request.originatingObject(); if (!originatingObject) return 0; - QVariant pagePtr = originatingObject->property("PagePointer"); - if (!pagePtr.isValid() || !pagePtr.canConvert()) - return 0; - - WebPage* webPage = static_cast(pagePtr.value()); - Q_ASSERT(webPage); - return webPage; + qulonglong pageID = originatingObject->property("pageID").toULongLong(); + return m_webProcess->webPage(pageID); } QNetworkReply* QtNetworkAccessManager::createRequest(Operation operation, const QNetworkRequest& request, QIODevice* outData) diff --git a/Source/WebKit2/WebProcess/qt/QtNetworkAccessManager.h b/Source/WebKit2/WebProcess/qt/QtNetworkAccessManager.h index 8d9eb1d..1af6fc2 100644 --- a/Source/WebKit2/WebProcess/qt/QtNetworkAccessManager.h +++ b/Source/WebKit2/WebProcess/qt/QtNetworkAccessManager.h @@ -38,15 +38,15 @@ class WebProcess; class QtNetworkAccessManager : public QNetworkAccessManager { Q_OBJECT public: - QtNetworkAccessManager(QObject* parent); QtNetworkAccessManager(WebProcess*); void registerApplicationScheme(const WebPage*, const QString& scheme); protected: virtual QNetworkReply* createRequest(Operation, const QNetworkRequest&, QIODevice* outgoingData = 0) OVERRIDE; - static WebPage* obtainOriginatingWebPage(const QNetworkRequest&); private: + WebPage* obtainOriginatingWebPage(const QNetworkRequest&); + QMultiHash m_applicationSchemes; WebProcess* m_webProcess; -- 2.7.4