Index: Source/modules/serviceworkers/ServiceWorkerRegistration.cpp |
diff --git a/Source/modules/serviceworkers/ServiceWorkerRegistration.cpp b/Source/modules/serviceworkers/ServiceWorkerRegistration.cpp |
index ed64100f932e181505add1178506e4b8efb8f8f9..408eba7ecb4a3868a46580ae6d40eb48586c6cbc 100644 |
--- a/Source/modules/serviceworkers/ServiceWorkerRegistration.cpp |
+++ b/Source/modules/serviceworkers/ServiceWorkerRegistration.cpp |
@@ -134,6 +134,7 @@ ServiceWorkerRegistration::ServiceWorkerRegistration(ExecutionContext* execution |
: ActiveDOMObject(executionContext) |
, m_outerRegistration(outerRegistration) |
, m_provider(0) |
+ , m_stopped(false) |
{ |
ASSERT(m_outerRegistration); |
ScriptWrappable::init(this); |
@@ -153,4 +154,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 |