Index: Source/modules/serviceworkers/ServiceWorkerRegistration.cpp |
diff --git a/Source/modules/serviceworkers/ServiceWorkerRegistration.cpp b/Source/modules/serviceworkers/ServiceWorkerRegistration.cpp |
index 455cf938f645e0b621a2c6ab62ad3218c7b28b06..b33fbda2c7f79aff26f2b10de9cd966da191f963 100644 |
--- a/Source/modules/serviceworkers/ServiceWorkerRegistration.cpp |
+++ b/Source/modules/serviceworkers/ServiceWorkerRegistration.cpp |
@@ -147,6 +147,7 @@ ServiceWorkerRegistration::ServiceWorkerRegistration(ExecutionContext* execution |
, WebServiceWorkerRegistrationProxy(this) |
, m_outerRegistration(outerRegistration) |
, m_provider(0) |
+ , m_stopped(false) |
{ |
ASSERT(m_outerRegistration); |
ScriptWrappable::init(this); |
@@ -166,4 +167,17 @@ void ServiceWorkerRegistration::trace(Visitor* visitor) |
EventTargetWithInlineData::trace(visitor); |
} |
+bool ServiceWorkerRegistration::hasPendingActivity() const |
+{ |
+ return !m_stopped; |
+} |
+ |
+void ServiceWorkerRegistration::stop() |
+{ |
+ if (m_stopped) |
+ return; |
+ m_stopped = true; |
+ m_outerRegistration->proxyStopped(); |
+} |
+ |
} // namespace blink |