Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(83)

Unified Diff: Source/web/ServiceWorkerGlobalScopeProxy.cpp

Issue 733983002: Service Worker: FetchEvent.preventDefault() results in a network error (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: sync Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/modules/serviceworkers/RespondWithObserver.cpp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/web/ServiceWorkerGlobalScopeProxy.cpp
diff --git a/Source/web/ServiceWorkerGlobalScopeProxy.cpp b/Source/web/ServiceWorkerGlobalScopeProxy.cpp
index f50b28cf612d4317b56ca7201d0424fdb0c7d64b..687969d8ad8e3837f274c09bff532d1ccc066809 100644
--- a/Source/web/ServiceWorkerGlobalScopeProxy.cpp
+++ b/Source/web/ServiceWorkerGlobalScopeProxy.cpp
@@ -82,8 +82,9 @@ void ServiceWorkerGlobalScopeProxy::dispatchFetchEvent(int eventID, const WebSer
{
ASSERT(m_workerGlobalScope);
RespondWithObserver* observer = RespondWithObserver::create(m_workerGlobalScope, eventID, webRequest.mode(), webRequest.frameType());
+ bool defaultPrevented = false;
if (!RuntimeEnabledFeatures::serviceWorkerOnFetchEnabled()) {
- observer->didDispatchEvent();
+ observer->didDispatchEvent(defaultPrevented);
return;
}
@@ -91,8 +92,8 @@ void ServiceWorkerGlobalScopeProxy::dispatchFetchEvent(int eventID, const WebSer
request->headers()->setGuard(Headers::ImmutableGuard);
RefPtrWillBeRawPtr<FetchEvent> fetchEvent(FetchEvent::create(observer, request));
fetchEvent->setIsReload(webRequest.isReload());
- m_workerGlobalScope->dispatchEvent(fetchEvent.release());
- observer->didDispatchEvent();
+ defaultPrevented = !m_workerGlobalScope->dispatchEvent(fetchEvent.release());
+ observer->didDispatchEvent(defaultPrevented);
}
void ServiceWorkerGlobalScopeProxy::dispatchGeofencingEvent(int eventID, WebGeofencingEventType eventType, const WebString& regionID, const WebCircularGeofencingRegion& region)
« no previous file with comments | « Source/modules/serviceworkers/RespondWithObserver.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698