Title: [149499] trunk/Source/WebKit2
- Revision
- 149499
- Author
- beid...@apple.com
- Date
- 2013-05-02 15:23:25 -0700 (Thu, 02 May 2013)
Log Message
REGRESSION (149389) Main resources converted to downloads are immediately cancelled.
<rdar://problem/13795795> and https://bugs.webkit.org/show_bug.cgi?id=115530
Reviewed by Alexey Proskuryakov.
* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload): Call didConvertHandleToDownload
on the NetworkResourceLoader.
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::NetworkResourceLoader):
(WebKit::NetworkResourceLoader::didConvertHandleToDownload): Set m_handleConvertedToDownload to true.
(WebKit::NetworkResourceLoader::abort): Only cancel the handle if m_handleConvertedToDownload is false.
* NetworkProcess/NetworkResourceLoader.h:
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (149498 => 149499)
--- trunk/Source/WebKit2/ChangeLog 2013-05-02 22:13:56 UTC (rev 149498)
+++ trunk/Source/WebKit2/ChangeLog 2013-05-02 22:23:25 UTC (rev 149499)
@@ -1,3 +1,20 @@
+2013-05-02 Brady Eidson <beid...@apple.com>
+
+ REGRESSION (149389) Main resources converted to downloads are immediately cancelled.
+ <rdar://problem/13795795> and https://bugs.webkit.org/show_bug.cgi?id=115530
+
+ Reviewed by Alexey Proskuryakov.
+
+ * NetworkProcess/NetworkConnectionToWebProcess.cpp:
+ (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload): Call didConvertHandleToDownload
+ on the NetworkResourceLoader.
+
+ * NetworkProcess/NetworkResourceLoader.cpp:
+ (WebKit::NetworkResourceLoader::NetworkResourceLoader):
+ (WebKit::NetworkResourceLoader::didConvertHandleToDownload): Set m_handleConvertedToDownload to true.
+ (WebKit::NetworkResourceLoader::abort): Only cancel the handle if m_handleConvertedToDownload is false.
+ * NetworkProcess/NetworkResourceLoader.h:
+
2013-05-02 Alexey Proskuryakov <a...@apple.com>
<rdar://problem/13740375> Non-ASCII downloaded file names are garbled when using NetworkProcess
Modified: trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp (149498 => 149499)
--- trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp 2013-05-02 22:13:56 UTC (rev 149498)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp 2013-05-02 22:23:25 UTC (rev 149499)
@@ -172,6 +172,8 @@
// Unblock the URL connection operation queue.
loader->handle()->continueDidReceiveResponse();
+
+ loader->didConvertHandleToDownload();
}
void NetworkConnectionToWebProcess::cookiesForDOM(bool privateBrowsingEnabled, const KURL& firstParty, const KURL& url, String& result)
Modified: trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.cpp (149498 => 149499)
--- trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.cpp 2013-05-02 22:13:56 UTC (rev 149498)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.cpp 2013-05-02 22:23:25 UTC (rev 149499)
@@ -54,6 +54,7 @@
NetworkResourceLoader::NetworkResourceLoader(const NetworkResourceLoadParameters& loadParameters, NetworkConnectionToWebProcess* connection)
: SchedulableLoader(loadParameters, connection)
, m_bytesReceived(0)
+ , m_handleConvertedToDownload(false)
{
ASSERT(isMainThread());
}
@@ -116,11 +117,17 @@
return result;
}
+void NetworkResourceLoader::didConvertHandleToDownload()
+{
+ ASSERT(m_handle);
+ m_handleConvertedToDownload = true;
+}
+
void NetworkResourceLoader::abort()
{
ASSERT(isMainThread());
- if (m_handle)
+ if (m_handle && !m_handleConvertedToDownload)
m_handle->cancel();
cleanup();
Modified: trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.h (149498 => 149499)
--- trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.h 2013-05-02 22:13:56 UTC (rev 149498)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.h 2013-05-02 22:23:25 UTC (rev 149499)
@@ -61,6 +61,7 @@
uint64_t destinationID() const;
WebCore::ResourceHandle* handle() const { return m_handle.get(); }
+ void didConvertHandleToDownload();
virtual void start() OVERRIDE;
virtual void abort() OVERRIDE;
@@ -126,6 +127,8 @@
uint64_t m_bytesReceived;
+ bool m_handleConvertedToDownload;
+
#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
static void tryGetShareableHandleFromSharedBuffer(ShareableResource::Handle&, WebCore::SharedBuffer*);
#endif
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes