Changeset 194264 in webkit
- Timestamp:
- Dec 18, 2015, 12:10:53 AM (11 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 1 added
- 27 edited
-
ChangeLog (modified) (1 diff)
-
NetworkProcess/NetworkConnectionToWebProcess.cpp (modified) (1 diff)
-
NetworkProcess/NetworkConnectionToWebProcess.h (modified) (2 diffs)
-
NetworkProcess/NetworkConnectionToWebProcess.messages.in (modified) (1 diff)
-
NetworkProcess/NetworkProcess.cpp (modified) (4 diffs)
-
NetworkProcess/NetworkProcess.h (modified) (1 diff)
-
NetworkProcess/NetworkProcess.messages.in (modified) (1 diff)
-
NetworkProcess/NetworkSession.h (modified) (3 diffs)
-
NetworkProcess/cocoa/NetworkSessionCocoa.mm (modified) (2 diffs)
-
Shared/Downloads/Download.cpp (modified) (3 diffs)
-
Shared/Downloads/Download.h (modified) (4 diffs)
-
Shared/Downloads/DownloadID.h (added)
-
Shared/Downloads/DownloadManager.cpp (modified) (4 diffs)
-
Shared/Downloads/DownloadManager.h (modified) (3 diffs)
-
UIProcess/API/C/WKDownload.cpp (modified) (1 diff)
-
UIProcess/Downloads/DownloadProxy.h (modified) (3 diffs)
-
UIProcess/Downloads/DownloadProxyMap.cpp (modified) (3 diffs)
-
UIProcess/Downloads/DownloadProxyMap.h (modified) (2 diffs)
-
UIProcess/WebPageProxy.cpp (modified) (3 diffs)
-
UIProcess/WebPageProxy.h (modified) (3 diffs)
-
UIProcess/WebPageProxy.messages.in (modified) (1 diff)
-
WebKit2.xcodeproj/project.pbxproj (modified) (4 diffs)
-
WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp (modified) (4 diffs)
-
WebProcess/WebPage/WebFrame.cpp (modified) (3 diffs)
-
WebProcess/WebPage/WebFrame.h (modified) (3 diffs)
-
WebProcess/WebPage/WebPage.cpp (modified) (1 diff)
-
WebProcess/WebPage/WebPage.h (modified) (2 diffs)
-
WebProcess/WebPage/WebPage.messages.in (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r194257 r194264 1 2015-12-18 Alex Christensen <achristensen@webkit.org> 2 3 Add types for DownloadID and TaskIdentifier 4 https://bugs.webkit.org/show_bug.cgi?id=152401 5 6 Reviewed by Brady Eidson. 7 8 DownloadID and TaskIdentifier used to both be just uint64_t's. 9 It is confusing to distinguish between them, so now they both have names. 10 We need a HashMap<TaskIdentifier, DownloadID> instead of a HashMap<uint64_t, uint64_t>. 11 12 * NetworkProcess/NetworkConnectionToWebProcess.cpp: 13 (WebKit::storageSession): 14 (WebKit::NetworkConnectionToWebProcess::startDownload): 15 (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload): 16 * NetworkProcess/NetworkConnectionToWebProcess.h: 17 * NetworkProcess/NetworkConnectionToWebProcess.messages.in: 18 * NetworkProcess/NetworkProcess.cpp: 19 (WebKit::NetworkProcess::deleteWebsiteDataForOrigins): 20 (WebKit::NetworkProcess::downloadRequest): 21 (WebKit::NetworkProcess::resumeDownload): 22 (WebKit::NetworkProcess::cancelDownload): 23 (WebKit::NetworkProcess::getNetworkProcessStatistics): 24 (WebKit::NetworkProcess::logDiagnosticMessage): 25 (WebKit::NetworkProcess::logDiagnosticMessageWithResult): 26 (WebKit::NetworkProcess::logDiagnosticMessageWithValue): 27 * NetworkProcess/NetworkProcess.h: 28 * NetworkProcess/NetworkProcess.messages.in: 29 * NetworkProcess/NetworkSession.h: 30 * NetworkProcess/cocoa/NetworkSessionCocoa.mm: 31 (WebKit::NetworkSession::createDataTaskWithRequest): 32 (WebKit::NetworkSession::dataTaskForIdentifier): 33 (WebKit::NetworkDataTask::resume): 34 (WebKit::NetworkDataTask::taskIdentifier): Deleted. 35 * Shared/Downloads/Download.cpp: 36 (WebKit::Download::Download): 37 (WebKit::Download::messageSenderDestinationID): 38 * Shared/Downloads/Download.h: 39 (WebKit::Download::downloadID): 40 * Shared/Downloads/DownloadID.h: Added. 41 (WebKit::DownloadID::DownloadID): 42 (WebKit::DownloadID::operator==): 43 (WebKit::DownloadID::downloadID): 44 (IPC::ArgumentCoder<WebKit::DownloadID>::encode): 45 (IPC::ArgumentCoder<WebKit::DownloadID>::decode): 46 (WTF::DownloadIDHash::hash): 47 (WTF::DownloadIDHash::equal): 48 (WTF::HashTraits<WebKit::DownloadID>::emptyValue): 49 (WTF::HashTraits<WebKit::DownloadID>::constructDeletedValue): 50 (WTF::HashTraits<WebKit::DownloadID>::isDeletedValue): 51 * Shared/Downloads/DownloadManager.cpp: 52 (WebKit::DownloadManager::DownloadManager): 53 (WebKit::DownloadManager::startDownload): 54 (WebKit::DownloadManager::convertHandleToDownload): 55 (WebKit::DownloadManager::resumeDownload): 56 (WebKit::DownloadManager::cancelDownload): 57 * Shared/Downloads/DownloadManager.h: 58 (WebKit::DownloadManager::isDownloading): 59 * UIProcess/API/C/WKDownload.cpp: 60 (WKDownloadGetID): 61 (WKDownloadCopyRequest): 62 * UIProcess/Downloads/DownloadProxy.h: 63 (WebKit::DownloadProxy::downloadID): 64 (WebKit::DownloadProxy::request): 65 (WebKit::DownloadProxy::resumeData): 66 * UIProcess/Downloads/DownloadProxyMap.cpp: 67 (WebKit::DownloadProxyMap::createDownloadProxy): 68 (WebKit::DownloadProxyMap::downloadFinished): 69 (WebKit::DownloadProxyMap::processDidClose): 70 * UIProcess/Downloads/DownloadProxyMap.h: 71 * UIProcess/WebPageProxy.cpp: 72 (WebKit::WebPageProxy::receivedPolicyDecision): 73 (WebKit::WebPageProxy::frameDidBecomeFrameSet): 74 (WebKit::WebPageProxy::decidePolicyForNavigationAction): 75 (WebKit::WebPageProxy::decidePolicyForResponse): 76 (WebKit::WebPageProxy::decidePolicyForResponseSync): 77 * UIProcess/WebPageProxy.h: 78 * UIProcess/WebPageProxy.messages.in: 79 * WebKit2.xcodeproj/project.pbxproj: 80 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: 81 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse): 82 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): 83 * WebProcess/WebPage/WebFrame.cpp: 84 (WebKit::WebFrame::invalidatePolicyListener): 85 (WebKit::WebFrame::didReceivePolicyDecision): 86 (WebKit::WebFrame::startDownload): 87 (WebKit::WebFrame::convertMainResourceLoadToDownload): 88 * WebProcess/WebPage/WebFrame.h: 89 * WebProcess/WebPage/WebPage.cpp: 90 (WebKit::WebPage::setSessionID): 91 (WebKit::WebPage::didReceivePolicyDecision): 92 * WebProcess/WebPage/WebPage.h: 93 * WebProcess/WebPage/WebPage.messages.in: 94 1 95 2015-12-17 Dan Bernstein <mitz@apple.com> 2 96 -
trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp
r194255 r194264 178 178 } 179 179 180 void NetworkConnectionToWebProcess::startDownload(SessionID sessionID, uint64_tdownloadID, const ResourceRequest& request)180 void NetworkConnectionToWebProcess::startDownload(SessionID sessionID, DownloadID downloadID, const ResourceRequest& request) 181 181 { 182 182 NetworkProcess::singleton().downloadManager().startDownload(sessionID, downloadID, request); 183 183 } 184 184 185 void NetworkConnectionToWebProcess::convertMainResourceLoadToDownload( WebCore::SessionID sessionID, uint64_t mainResourceLoadIdentifier, uint64_tdownloadID, const ResourceRequest& request, const ResourceResponse& response)185 void NetworkConnectionToWebProcess::convertMainResourceLoadToDownload(SessionID sessionID, uint64_t mainResourceLoadIdentifier, DownloadID downloadID, const ResourceRequest& request, const ResourceResponse& response) 186 186 { 187 187 auto& networkProcess = NetworkProcess::singleton(); -
trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.h
r194255 r194264 29 29 #include "BlockingResponseMap.h" 30 30 #include "Connection.h" 31 #include "DownloadID.h" 31 32 #include "NetworkConnectionToWebProcessMessages.h" 32 33 #include <WebCore/ResourceLoadPriority.h> … … 77 78 void setDefersLoading(ResourceLoadIdentifier, bool); 78 79 void crossOriginRedirectReceived(ResourceLoadIdentifier, const WebCore::URL& redirectURL); 79 void startDownload(WebCore::SessionID, uint64_t downloadID, const WebCore::ResourceRequest&);80 void convertMainResourceLoadToDownload(WebCore::SessionID, uint64_t mainResourceLoadIdentifier, uint64_t downloadID, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&);80 void startDownload(WebCore::SessionID, DownloadID, const WebCore::ResourceRequest&); 81 void convertMainResourceLoadToDownload(WebCore::SessionID, uint64_t mainResourceLoadIdentifier, DownloadID, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&); 81 82 82 83 void cookiesForDOM(WebCore::SessionID, const WebCore::URL& firstParty, const WebCore::URL&, String& result); -
trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.messages.in
r194255 r194264 30 30 PrefetchDNS(String hostname) 31 31 32 StartDownload(WebCore::SessionID sessionID, uint64_tdownloadID, WebCore::ResourceRequest request)33 ConvertMainResourceLoadToDownload(WebCore::SessionID sessionID, uint64_t mainResourceLoadIdentifier, uint64_tdownloadID, WebCore::ResourceRequest request, WebCore::ResourceResponse response)32 StartDownload(WebCore::SessionID sessionID, WebKit::DownloadID downloadID, WebCore::ResourceRequest request) 33 ConvertMainResourceLoadToDownload(WebCore::SessionID sessionID, uint64_t mainResourceLoadIdentifier, WebKit::DownloadID downloadID, WebCore::ResourceRequest request, WebCore::ResourceResponse response) 34 34 35 35 CookiesForDOM(WebCore::SessionID sessionID, WebCore::URL firstParty, WebCore::URL url) -> (String result) -
trunk/Source/WebKit2/NetworkProcess/NetworkProcess.cpp
r194255 r194264 433 433 } 434 434 435 void NetworkProcess::downloadRequest(SessionID sessionID, uint64_tdownloadID, const ResourceRequest& request)435 void NetworkProcess::downloadRequest(SessionID sessionID, DownloadID downloadID, const ResourceRequest& request) 436 436 { 437 437 downloadManager().startDownload(sessionID, downloadID, request); 438 438 } 439 439 440 void NetworkProcess::resumeDownload(SessionID sessionID, uint64_tdownloadID, const IPC::DataReference& resumeData, const String& path, const WebKit::SandboxExtension::Handle& sandboxExtensionHandle)440 void NetworkProcess::resumeDownload(SessionID sessionID, DownloadID downloadID, const IPC::DataReference& resumeData, const String& path, const WebKit::SandboxExtension::Handle& sandboxExtensionHandle) 441 441 { 442 442 downloadManager().resumeDownload(sessionID, downloadID, resumeData, path, sandboxExtensionHandle); 443 443 } 444 444 445 void NetworkProcess::cancelDownload( uint64_tdownloadID)445 void NetworkProcess::cancelDownload(DownloadID downloadID) 446 446 { 447 447 downloadManager().cancelDownload(downloadID); … … 475 475 } 476 476 477 void NetworkProcess::logDiagnosticMessage(uint64_t webPageID, const String& message, const String& description, WebCore::ShouldSample shouldSample)477 void NetworkProcess::logDiagnosticMessage(uint64_t webPageID, const String& message, const String& description, ShouldSample shouldSample) 478 478 { 479 479 if (!DiagnosticLoggingClient::shouldLogAfterSampling(shouldSample)) … … 483 483 } 484 484 485 void NetworkProcess::logDiagnosticMessageWithResult(uint64_t webPageID, const String& message, const String& description, WebCore::DiagnosticLoggingResultType result, WebCore::ShouldSample shouldSample)485 void NetworkProcess::logDiagnosticMessageWithResult(uint64_t webPageID, const String& message, const String& description, DiagnosticLoggingResultType result, ShouldSample shouldSample) 486 486 { 487 487 if (!DiagnosticLoggingClient::shouldLogAfterSampling(shouldSample)) … … 491 491 } 492 492 493 void NetworkProcess::logDiagnosticMessageWithValue(uint64_t webPageID, const String& message, const String& description, const String& value, WebCore::ShouldSample shouldSample)493 void NetworkProcess::logDiagnosticMessageWithValue(uint64_t webPageID, const String& message, const String& description, const String& value, ShouldSample shouldSample) 494 494 { 495 495 if (!DiagnosticLoggingClient::shouldLogAfterSampling(shouldSample)) -
trunk/Source/WebKit2/NetworkProcess/NetworkProcess.h
r194255 r194264 150 150 void clearDiskCache(std::chrono::system_clock::time_point modifiedSince, std::function<void ()> completionHandler); 151 151 152 void downloadRequest(WebCore::SessionID, uint64_t downloadID, const WebCore::ResourceRequest&);153 void resumeDownload(WebCore::SessionID, uint64_t downloadID, const IPC::DataReference& resumeData, const String& path, const SandboxExtension::Handle&);154 void cancelDownload( uint64_t downloadID);152 void downloadRequest(WebCore::SessionID, DownloadID, const WebCore::ResourceRequest&); 153 void resumeDownload(WebCore::SessionID, DownloadID, const IPC::DataReference& resumeData, const String& path, const SandboxExtension::Handle&); 154 void cancelDownload(DownloadID); 155 155 void setCacheModel(uint32_t); 156 156 void allowSpecificHTTPSCertificateForHost(const WebCore::CertificateInfo&, const String& host); -
trunk/Source/WebKit2/NetworkProcess/NetworkProcess.messages.in
r194255 r194264 40 40 DeleteWebsiteDataForOrigins(WebCore::SessionID sessionID, uint64_t websiteDataTypes, Vector<WebCore::SecurityOriginData> origins, Vector<String> cookieHostNames, uint64_t callbackID) 41 41 42 DownloadRequest(WebCore::SessionID sessionID, uint64_tdownloadID, WebCore::ResourceRequest request)43 ResumeDownload(WebCore::SessionID sessionID, uint64_tdownloadID, IPC::DataReference resumeData, String path, WebKit::SandboxExtension::Handle sandboxExtensionHandle)44 CancelDownload( uint64_tdownloadID)42 DownloadRequest(WebCore::SessionID sessionID, WebKit::DownloadID downloadID, WebCore::ResourceRequest request) 43 ResumeDownload(WebCore::SessionID sessionID, WebKit::DownloadID downloadID, IPC::DataReference resumeData, String path, WebKit::SandboxExtension::Handle sandboxExtensionHandle) 44 CancelDownload(WebKit::DownloadID downloadID) 45 45 46 46 SetProcessSuppressionEnabled(bool flag) -
trunk/Source/WebKit2/NetworkProcess/NetworkSession.h
r194255 r194264 27 27 #define NetworkSession_h 28 28 29 #if PLATFORM(COCOA) 29 30 OBJC_CLASS NSURLSession; 30 31 OBJC_CLASS NSURLSessionDataTask; 31 32 OBJC_CLASS NSOperationQueue; 32 33 OBJC_CLASS WKNetworkSessionDelegate; 34 #endif 33 35 36 #include "DownloadID.h" 34 37 #include <WebCore/FrameLoaderTypes.h> 35 38 #include <WebCore/SessionID.h> … … 81 84 void resume(); 82 85 83 uint64_t taskIdentifier(); 86 typedef uint64_t TaskIdentifier; 87 TaskIdentifier taskIdentifier(); 84 88 85 89 ~NetworkDataTask(); … … 113 117 Ref<NetworkDataTask> createDataTaskWithRequest(const WebCore::ResourceRequest&, NetworkSessionTaskClient&); 114 118 115 NetworkDataTask* dataTaskForIdentifier( uint64_t);119 NetworkDataTask* dataTaskForIdentifier(NetworkDataTask::TaskIdentifier); 116 120 117 121 private: 118 122 WebCore::SessionID m_sessionID; 119 HashMap<uint64_t, NetworkDataTask*> m_dataTaskMap; 123 HashMap<NetworkDataTask::TaskIdentifier, NetworkDataTask*> m_dataTaskMap; 124 HashMap<NetworkDataTask::TaskIdentifier, DownloadID> m_downloadMap; 120 125 #if PLATFORM(COCOA) 121 126 RetainPtr<NSURLSession> m_session; -
trunk/Source/WebKit2/NetworkProcess/cocoa/NetworkSessionCocoa.mm
r194255 r194264 241 241 } 242 242 243 NetworkDataTask* NetworkSession::dataTaskForIdentifier( uint64_ttaskIdentifier)243 NetworkDataTask* NetworkSession::dataTaskForIdentifier(NetworkDataTask::TaskIdentifier taskIdentifier) 244 244 { 245 245 ASSERT(isMainThread()); … … 275 275 } 276 276 277 uint64_t NetworkDataTask::taskIdentifier() 277 auto NetworkDataTask::taskIdentifier() -> TaskIdentifier 278 278 { 279 279 return [m_task taskIdentifier]; -
trunk/Source/WebKit2/Shared/Downloads/Download.cpp
r194255 r194264 45 45 46 46 #if USE(NETWORK_SESSION) 47 Download::Download(DownloadManager& downloadManager, const NetworkSession& session, uint64_tdownloadID, const ResourceRequest& request)47 Download::Download(DownloadManager& downloadManager, const NetworkSession& session, DownloadID downloadID, const ResourceRequest& request) 48 48 #else 49 Download::Download(DownloadManager& downloadManager, uint64_tdownloadID, const ResourceRequest& request)49 Download::Download(DownloadManager& downloadManager, DownloadID downloadID, const ResourceRequest& request) 50 50 #endif 51 51 : m_downloadManager(downloadManager) … … 56 56 #endif 57 57 { 58 ASSERT(m_downloadID );58 ASSERT(m_downloadID.downloadID()); 59 59 60 60 m_downloadManager.didCreateDownload(); … … 163 163 uint64_t Download::messageSenderDestinationID() 164 164 { 165 return m_downloadID ;165 return m_downloadID.downloadID(); 166 166 } 167 167 -
trunk/Source/WebKit2/Shared/Downloads/Download.h
r194255 r194264 27 27 #define Download_h 28 28 29 #include "DownloadID.h" 29 30 #include "MessageSender.h" 30 31 #include "SandboxExtension.h" … … 77 78 public: 78 79 #if USE(NETWORK_SESSION) 79 Download(DownloadManager&, const NetworkSession&, uint64_t downloadID, const WebCore::ResourceRequest&);80 Download(DownloadManager&, const NetworkSession&, DownloadID, const WebCore::ResourceRequest&); 80 81 #else 81 Download(DownloadManager&, uint64_t downloadID, const WebCore::ResourceRequest&);82 Download(DownloadManager&, DownloadID, const WebCore::ResourceRequest&); 82 83 #endif 83 84 ~Download(); … … 92 93 void cancel(); 93 94 94 uint64_tdownloadID() const { return m_downloadID; }95 DownloadID downloadID() const { return m_downloadID; } 95 96 96 97 void didStart(); … … 129 130 130 131 DownloadManager& m_downloadManager; 131 uint64_tm_downloadID;132 DownloadID m_downloadID; 132 133 WebCore::ResourceRequest m_request; 133 134 -
trunk/Source/WebKit2/Shared/Downloads/DownloadManager.cpp
r194255 r194264 42 42 } 43 43 44 void DownloadManager::startDownload(SessionID sessionID, uint64_tdownloadID, const ResourceRequest& request)44 void DownloadManager::startDownload(SessionID sessionID, DownloadID downloadID, const ResourceRequest& request) 45 45 { 46 46 #if USE(NETWORK_SESSION) … … 59 59 60 60 #if !USE(NETWORK_SESSION) 61 void DownloadManager::convertHandleToDownload( uint64_tdownloadID, ResourceHandle* handle, const ResourceRequest& request, const ResourceResponse& response)61 void DownloadManager::convertHandleToDownload(DownloadID downloadID, ResourceHandle* handle, const ResourceRequest& request, const ResourceResponse& response) 62 62 { 63 63 auto download = std::make_unique<Download>(*this, downloadID, request); … … 69 69 #endif 70 70 71 void DownloadManager::resumeDownload( WebCore::SessionID, uint64_tdownloadID, const IPC::DataReference& resumeData, const String& path, const SandboxExtension::Handle& sandboxExtensionHandle)71 void DownloadManager::resumeDownload(SessionID, DownloadID downloadID, const IPC::DataReference& resumeData, const String& path, const SandboxExtension::Handle& sandboxExtensionHandle) 72 72 { 73 73 #if USE(NETWORK_SESSION) … … 83 83 } 84 84 85 void DownloadManager::cancelDownload( uint64_tdownloadID)85 void DownloadManager::cancelDownload(DownloadID downloadID) 86 86 { 87 87 Download* download = m_downloads.get(downloadID); -
trunk/Source/WebKit2/Shared/Downloads/DownloadManager.h
r194255 r194264 27 27 #define DownloadManager_h 28 28 29 #include "Download.h" 29 30 #include "SandboxExtension.h" 30 31 #include <WebCore/NotImplemented.h> … … 70 71 explicit DownloadManager(Client*); 71 72 72 void startDownload(WebCore::SessionID, uint64_t downloadID, const WebCore::ResourceRequest&);73 void startDownload(WebCore::SessionID, DownloadID, const WebCore::ResourceRequest&); 73 74 #if !USE(NETWORK_SESSION) 74 void convertHandleToDownload( uint64_t downloadID, WebCore::ResourceHandle*, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&);75 void convertHandleToDownload(DownloadID, WebCore::ResourceHandle*, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&); 75 76 #endif 76 77 77 void resumeDownload(WebCore::SessionID, uint64_t downloadID, const IPC::DataReference& resumeData, const String& path, const SandboxExtension::Handle&);78 void resumeDownload(WebCore::SessionID, DownloadID, const IPC::DataReference& resumeData, const String& path, const SandboxExtension::Handle&); 78 79 79 void cancelDownload( uint64_t downloadID);80 void cancelDownload(DownloadID); 80 81 81 82 void downloadFinished(Download*); … … 91 92 private: 92 93 Client* m_client; 93 HashMap< uint64_t, std::unique_ptr<Download>> m_downloads;94 HashMap<DownloadID, std::unique_ptr<Download>> m_downloads; 94 95 }; 95 96 -
trunk/Source/WebKit2/UIProcess/API/C/WKDownload.cpp
r194255 r194264 41 41 uint64_t WKDownloadGetID(WKDownloadRef download) 42 42 { 43 return toImpl(download)->downloadID() ;43 return toImpl(download)->downloadID().downloadID(); 44 44 } 45 45 -
trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxy.h
r194255 r194264 29 29 #include "APIObject.h" 30 30 #include "Connection.h" 31 #include "DownloadID.h" 31 32 #include "SandboxExtension.h" 32 33 #include <WebCore/ResourceRequest.h> … … 55 56 ~DownloadProxy(); 56 57 57 uint64_tdownloadID() const { return m_downloadID; }58 DownloadID downloadID() const { return m_downloadID; } 58 59 const WebCore::ResourceRequest& request() const { return m_request; } 59 60 API::Data* resumeData() const { return m_resumeData.get(); } … … 88 89 DownloadProxyMap& m_downloadProxyMap; 89 90 RefPtr<WebProcessPool> m_processPool; 90 uint64_tm_downloadID;91 DownloadID m_downloadID; 91 92 92 93 RefPtr<API::Data> m_resumeData; -
trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxyMap.cpp
r194255 r194264 50 50 m_downloads.set(downloadProxy->downloadID(), downloadProxy); 51 51 52 m_process->addMessageReceiver(Messages::DownloadProxy::messageReceiverName(), downloadProxy->downloadID() , *downloadProxy);52 m_process->addMessageReceiver(Messages::DownloadProxy::messageReceiverName(), downloadProxy->downloadID().downloadID(), *downloadProxy); 53 53 54 54 return downloadProxy.get(); … … 57 57 void DownloadProxyMap::downloadFinished(DownloadProxy* downloadProxy) 58 58 { 59 uint64_tdownloadID = downloadProxy->downloadID();59 auto downloadID = downloadProxy->downloadID(); 60 60 61 61 ASSERT(m_downloads.contains(downloadID)); 62 62 63 m_process->removeMessageReceiver(Messages::DownloadProxy::messageReceiverName(), downloadID );63 m_process->removeMessageReceiver(Messages::DownloadProxy::messageReceiverName(), downloadID.downloadID()); 64 64 downloadProxy->invalidate(); 65 65 m_downloads.remove(downloadID); … … 69 69 { 70 70 // Invalidate all outstanding downloads. 71 for ( HashMap<uint64_t, RefPtr<DownloadProxy>>::iterator::Valuesit = m_downloads.begin().values(), end = m_downloads.end().values(); it != end; ++it) {71 for (auto it = m_downloads.begin().values(), end = m_downloads.end().values(); it != end; ++it) { 72 72 (*it)->processDidClose(); 73 73 (*it)->invalidate(); -
trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxyMap.h
r194255 r194264 27 27 #define DownloadProxyMap_h 28 28 29 #include "DownloadID.h" 29 30 #include <wtf/HashMap.h> 30 31 #include <wtf/Noncopyable.h> … … 57 58 private: 58 59 ChildProcessProxy* m_process; 59 HashMap< uint64_t, RefPtr<DownloadProxy>> m_downloads;60 HashMap<DownloadID, RefPtr<DownloadProxy>> m_downloads; 60 61 }; 61 62 -
trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp
r194255 r194264 2016 2016 m_pageLoadState.clearPendingAPIRequestURL(transaction); 2017 2017 2018 uint64_t downloadID = 0;2018 DownloadID downloadID = { }; 2019 2019 if (action == PolicyDownload) { 2020 2020 // Create a download proxy. … … 3251 3251 } 3252 3252 3253 void WebPageProxy::decidePolicyForNavigationAction(uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, const NavigationActionData& navigationActionData, uint64_t originatingFrameID, const SecurityOriginData& originatingFrameSecurityOrigin, const WebCore::ResourceRequest& originalRequest, const ResourceRequest& request, uint64_t listenerID, const UserData& userData, bool& receivedPolicyAction, uint64_t& newNavigationID, uint64_t& policyAction, uint64_t& downloadID)3253 void WebPageProxy::decidePolicyForNavigationAction(uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, const NavigationActionData& navigationActionData, uint64_t originatingFrameID, const SecurityOriginData& originatingFrameSecurityOrigin, const WebCore::ResourceRequest& originalRequest, const ResourceRequest& request, uint64_t listenerID, const UserData& userData, bool& receivedPolicyAction, uint64_t& newNavigationID, uint64_t& policyAction, DownloadID& downloadID) 3254 3254 { 3255 3255 PageClientProtector protector(m_pageClient); … … 3360 3360 } 3361 3361 3362 void WebPageProxy::decidePolicyForResponseSync(uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, const ResourceResponse& response, const ResourceRequest& request, bool canShowMIMEType, uint64_t listenerID, const UserData& userData, bool& receivedPolicyAction, uint64_t& policyAction, uint64_t& downloadID)3362 void WebPageProxy::decidePolicyForResponseSync(uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, const ResourceResponse& response, const ResourceRequest& request, bool canShowMIMEType, uint64_t listenerID, const UserData& userData, bool& receivedPolicyAction, uint64_t& policyAction, DownloadID& downloadID) 3363 3363 { 3364 3364 PageClientProtector protector(m_pageClient); -
trunk/Source/WebKit2/UIProcess/WebPageProxy.h
r194255 r194264 33 33 #include "Connection.h" 34 34 #include "ContextMenuContextData.h" 35 #include "DownloadID.h" 35 36 #include "DragControllerAction.h" 36 37 #include "DrawingAreaProxy.h" … … 1134 1135 void didDestroyNavigation(uint64_t navigationID); 1135 1136 1136 void decidePolicyForNavigationAction(uint64_t frameID, const WebCore::SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, const NavigationActionData&, uint64_t originatingFrameID, const WebCore::SecurityOriginData& originatingFrameSecurityOrigin, const WebCore::ResourceRequest& originalRequest, const WebCore::ResourceRequest&, uint64_t listenerID, const UserData&, bool& receivedPolicyAction, uint64_t& newNavigationID, uint64_t& policyAction, uint64_t& downloadID);1137 void decidePolicyForNavigationAction(uint64_t frameID, const WebCore::SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, const NavigationActionData&, uint64_t originatingFrameID, const WebCore::SecurityOriginData& originatingFrameSecurityOrigin, const WebCore::ResourceRequest& originalRequest, const WebCore::ResourceRequest&, uint64_t listenerID, const UserData&, bool& receivedPolicyAction, uint64_t& newNavigationID, uint64_t& policyAction, DownloadID&); 1137 1138 void decidePolicyForNewWindowAction(uint64_t frameID, const WebCore::SecurityOriginData& frameSecurityOrigin, const NavigationActionData&, const WebCore::ResourceRequest&, const String& frameName, uint64_t listenerID, const UserData&); 1138 1139 void decidePolicyForResponse(uint64_t frameID, const WebCore::SecurityOriginData& frameSecurityOrigin, const WebCore::ResourceResponse&, const WebCore::ResourceRequest&, bool canShowMIMEType, uint64_t listenerID, const UserData&); 1139 void decidePolicyForResponseSync(uint64_t frameID, const WebCore::SecurityOriginData& frameSecurityOrigin, const WebCore::ResourceResponse&, const WebCore::ResourceRequest&, bool canShowMIMEType, uint64_t listenerID, const UserData&, bool& receivedPolicyAction, uint64_t& policyAction, uint64_t& downloadID);1140 void decidePolicyForResponseSync(uint64_t frameID, const WebCore::SecurityOriginData& frameSecurityOrigin, const WebCore::ResourceResponse&, const WebCore::ResourceRequest&, bool canShowMIMEType, uint64_t listenerID, const UserData&, bool& receivedPolicyAction, uint64_t& policyAction, DownloadID&); 1140 1141 void unableToImplementPolicy(uint64_t frameID, const WebCore::ResourceError&, const UserData&); 1141 1142 … … 1617 1618 bool m_syncMimeTypePolicyActionIsValid; 1618 1619 WebCore::PolicyAction m_syncMimeTypePolicyAction; 1619 uint64_tm_syncMimeTypePolicyDownloadID;1620 DownloadID m_syncMimeTypePolicyDownloadID; 1620 1621 1621 1622 bool m_inDecidePolicyForNavigationAction; 1622 1623 bool m_syncNavigationActionPolicyActionIsValid; 1623 1624 WebCore::PolicyAction m_syncNavigationActionPolicyAction; 1624 uint64_tm_syncNavigationActionPolicyDownloadID;1625 DownloadID m_syncNavigationActionPolicyDownloadID; 1625 1626 bool m_shouldSuppressAppLinksInNextNavigationPolicyDecision { false }; 1626 1627 -
trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in
r194255 r194264 106 106 107 107 # Policy messages 108 DecidePolicyForResponseSync(uint64_t frameID, struct WebCore::SecurityOriginData frameSecurityOrigin, WebCore::ResourceResponse response, WebCore::ResourceRequest request, bool canShowMIMEType, uint64_t listenerID, WebKit::UserData userData) -> (bool receivedPolicyAction, uint64_t policyAction, uint64_tdownloadID)109 DecidePolicyForNavigationAction(uint64_t frameID, struct WebCore::SecurityOriginData frameSecurityOrigin, uint64_t navigationID, struct WebKit::NavigationActionData navigationActionData, uint64_t originatingFrameID, struct WebCore::SecurityOriginData originatingFrameSecurityOrigin, WebCore::ResourceRequest originalRequest, WebCore::ResourceRequest request, uint64_t listenerID, WebKit::UserData userData) -> (bool receivedPolicyAction, uint64_t newNavigationID, uint64_t policyAction, uint64_tdownloadID)108 DecidePolicyForResponseSync(uint64_t frameID, struct WebCore::SecurityOriginData frameSecurityOrigin, WebCore::ResourceResponse response, WebCore::ResourceRequest request, bool canShowMIMEType, uint64_t listenerID, WebKit::UserData userData) -> (bool receivedPolicyAction, uint64_t policyAction, WebKit::DownloadID downloadID) 109 DecidePolicyForNavigationAction(uint64_t frameID, struct WebCore::SecurityOriginData frameSecurityOrigin, uint64_t navigationID, struct WebKit::NavigationActionData navigationActionData, uint64_t originatingFrameID, struct WebCore::SecurityOriginData originatingFrameSecurityOrigin, WebCore::ResourceRequest originalRequest, WebCore::ResourceRequest request, uint64_t listenerID, WebKit::UserData userData) -> (bool receivedPolicyAction, uint64_t newNavigationID, uint64_t policyAction, WebKit::DownloadID downloadID) 110 110 DecidePolicyForNewWindowAction(uint64_t frameID, struct WebCore::SecurityOriginData frameSecurityOrigin, struct WebKit::NavigationActionData navigationActionData, WebCore::ResourceRequest request, String frameName, uint64_t listenerID, WebKit::UserData userData) 111 111 UnableToImplementPolicy(uint64_t frameID, WebCore::ResourceError error, WebKit::UserData userData) -
trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj
r194255 r194264 1065 1065 5272B28B1406985D0096A5D0 /* StatisticsData.h in Headers */ = {isa = PBXBuildFile; fileRef = 5272B2891406985D0096A5D0 /* StatisticsData.h */; }; 1066 1066 528C37C1195CBB1A00D8B9CC /* WKBackForwardListPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A9F28101958F478008CAC72 /* WKBackForwardListPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1067 5C1426E11C23F50B00D41183 /* DownloadID.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C0932061C236011007AAA7C /* DownloadID.h */; }; 1067 1068 5C20CB9D1BB0DCFA00895BB1 /* NetworkSessionCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C20CB9B1BB0DCD200895BB1 /* NetworkSessionCocoa.mm */; }; 1068 1069 5C20CBA01BB1ECD800895BB1 /* NetworkSession.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C20CB9E1BB0DD1800895BB1 /* NetworkSession.h */; }; … … 3257 3258 5272B2881406985D0096A5D0 /* StatisticsData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StatisticsData.cpp; sourceTree = "<group>"; }; 3258 3259 5272B2891406985D0096A5D0 /* StatisticsData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatisticsData.h; sourceTree = "<group>"; }; 3260 5C0932061C236011007AAA7C /* DownloadID.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DownloadID.h; path = Downloads/DownloadID.h; sourceTree = "<group>"; }; 3259 3261 5C20CB9B1BB0DCD200895BB1 /* NetworkSessionCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = NetworkSessionCocoa.mm; path = NetworkProcess/cocoa/NetworkSessionCocoa.mm; sourceTree = "<group>"; }; 3260 3262 5C20CB9E1BB0DD1800895BB1 /* NetworkSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NetworkSession.h; path = NetworkProcess/NetworkSession.h; sourceTree = "<group>"; }; … … 5746 5748 isa = PBXGroup; 5747 5749 children = ( 5750 5C0932061C236011007AAA7C /* DownloadID.h */, 5748 5751 5C9B860E1C223E5400110F36 /* cocoa */, 5749 5752 2DA944A51884E93C00ED86DB /* ios */, … … 8313 8316 E1AEA22F14687BDB00804569 /* WKFullKeyboardAccessWatcher.h in Headers */, 8314 8317 CDCA85C9132ABA4E00E961DF /* WKFullScreenWindowController.h in Headers */, 8318 5C1426E11C23F50B00D41183 /* DownloadID.h in Headers */, 8315 8319 BC54CC1212D674EE005C67B0 /* WKGeolocationManager.h in Headers */, 8316 8320 BC06F44E12DBDF3F002D78DE /* WKGeolocationPermissionRequest.h in Headers */, -
trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
r194255 r194264 695 695 bool receivedPolicyAction; 696 696 uint64_t policyAction; 697 uint64_tdownloadID;697 DownloadID downloadID; 698 698 699 699 unsigned syncSendFlags = IPC::InformPlatformProcessWillSuspend; … … 703 703 WebCore::Frame* coreFrame = m_frame ? m_frame->coreFrame() : nullptr; 704 704 if (!webPage->sendSync(Messages::WebPageProxy::DecidePolicyForResponseSync(m_frame->frameID(), SecurityOriginData::fromFrame(coreFrame), response, request, canShowMIMEType, listenerID, UserData(WebProcess::singleton().transformObjectsToHandles(userData.get()).get())), Messages::WebPageProxy::DecidePolicyForResponseSync::Reply(receivedPolicyAction, policyAction, downloadID), std::chrono::milliseconds::max(), syncSendFlags)) { 705 m_frame->didReceivePolicyDecision(listenerID, PolicyIgnore, 0, 0);705 m_frame->didReceivePolicyDecision(listenerID, PolicyIgnore, 0, { }); 706 706 return; 707 707 } … … 776 776 uint64_t newNavigationID; 777 777 uint64_t policyAction; 778 uint64_tdownloadID;778 DownloadID downloadID; 779 779 780 780 RefPtr<WebFrame> originatingFrame; … … 815 815 WebCore::Frame* originatingCoreFrame = originatingFrame ? originatingFrame->coreFrame() : nullptr; 816 816 if (!webPage->sendSync(Messages::WebPageProxy::DecidePolicyForNavigationAction(m_frame->frameID(), SecurityOriginData::fromFrame(coreFrame), documentLoader->navigationID(), navigationActionData, originatingFrame ? originatingFrame->frameID() : 0, SecurityOriginData::fromFrame(originatingCoreFrame), navigationAction.resourceRequest(), request, listenerID, UserData(WebProcess::singleton().transformObjectsToHandles(userData.get()).get())), Messages::WebPageProxy::DecidePolicyForNavigationAction::Reply(receivedPolicyAction, newNavigationID, policyAction, downloadID))) { 817 m_frame->didReceivePolicyDecision(listenerID, PolicyIgnore, 0, 0);817 m_frame->didReceivePolicyDecision(listenerID, PolicyIgnore, 0, { }); 818 818 return; 819 819 } -
trunk/Source/WebKit2/WebProcess/WebPage/WebFrame.cpp
r194255 r194264 216 216 return; 217 217 218 m_policyDownloadID = 0;218 m_policyDownloadID = { }; 219 219 m_policyListenerID = 0; 220 220 m_policyFunction = 0; 221 221 } 222 222 223 void WebFrame::didReceivePolicyDecision(uint64_t listenerID, PolicyAction action, uint64_t navigationID, uint64_tdownloadID)223 void WebFrame::didReceivePolicyDecision(uint64_t listenerID, PolicyAction action, uint64_t navigationID, DownloadID downloadID) 224 224 { 225 225 if (!m_coreFrame) … … 249 249 void WebFrame::startDownload(const WebCore::ResourceRequest& request) 250 250 { 251 ASSERT(m_policyDownloadID );252 253 uint64_tpolicyDownloadID = m_policyDownloadID;254 m_policyDownloadID = 0;251 ASSERT(m_policyDownloadID.downloadID()); 252 253 auto policyDownloadID = m_policyDownloadID; 254 m_policyDownloadID = { }; 255 255 256 256 auto& webProcess = WebProcess::singleton(); … … 261 261 void WebFrame::convertMainResourceLoadToDownload(DocumentLoader* documentLoader, SessionID sessionID, const ResourceRequest& request, const ResourceResponse& response) 262 262 { 263 ASSERT(m_policyDownloadID );264 265 uint64_tpolicyDownloadID = m_policyDownloadID;266 m_policyDownloadID = 0;263 ASSERT(m_policyDownloadID.downloadID()); 264 265 auto policyDownloadID = m_policyDownloadID; 266 m_policyDownloadID = { }; 267 267 268 268 SubresourceLoader* mainResourceLoader = documentLoader->mainResourceLoader(); -
trunk/Source/WebKit2/WebProcess/WebPage/WebFrame.h
r194255 r194264 28 28 29 29 #include "APIObject.h" 30 #include "DownloadID.h" 30 31 #include "ShareableBitmap.h" 31 32 #include "WKBase.h" … … 81 82 uint64_t setUpPolicyListener(WebCore::FramePolicyFunction); 82 83 void invalidatePolicyListener(); 83 void didReceivePolicyDecision(uint64_t listenerID, WebCore::PolicyAction, uint64_t navigationID, uint64_t downloadID);84 void didReceivePolicyDecision(uint64_t listenerID, WebCore::PolicyAction, uint64_t navigationID, DownloadID); 84 85 85 86 void startDownload(const WebCore::ResourceRequest&); … … 171 172 uint64_t m_policyListenerID; 172 173 WebCore::FramePolicyFunction m_policyFunction; 173 uint64_tm_policyDownloadID;174 DownloadID m_policyDownloadID; 174 175 175 176 std::unique_ptr<WebFrameLoaderClient> m_frameLoaderClient; -
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp
r194255 r194264 2409 2409 } 2410 2410 2411 void WebPage::didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, uint32_t policyAction, uint64_t navigationID, uint64_tdownloadID)2411 void WebPage::didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, uint32_t policyAction, uint64_t navigationID, DownloadID downloadID) 2412 2412 { 2413 2413 WebFrame* frame = WebProcess::singleton().webFrame(frameID); -
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h
r194255 r194264 31 31 #include "APIInjectedBundlePageUIClient.h" 32 32 #include "APIObject.h" 33 #include "Download.h" 33 34 #include "FindController.h" 34 35 #include "GeolocationPermissionRequestManager.h" … … 1044 1045 void updatePreferences(const WebPreferencesStore&); 1045 1046 1046 void didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, uint32_t policyAction, uint64_t navigationID, uint64_t downloadID);1047 void didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, uint32_t policyAction, uint64_t navigationID, DownloadID); 1047 1048 void setUserAgent(const String&); 1048 1049 void setCustomTextEncodingName(const String&); -
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in
r194255 r194264 142 142 DidRemoveBackForwardItem(uint64_t backForwardItemID) 143 143 144 DidReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, uint32_t policyAction, uint64_t navigationID, uint64_tdownloadID)144 DidReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, uint32_t policyAction, uint64_t navigationID, WebKit::DownloadID downloadID) 145 145 146 146 ClearSelection()
Note:
See TracChangeset
for help on using the changeset viewer.