| Index: third_party/WebKit/Source/modules/serviceworkers/NavigatorServiceWorker.cpp
|
| diff --git a/third_party/WebKit/Source/modules/serviceworkers/NavigatorServiceWorker.cpp b/third_party/WebKit/Source/modules/serviceworkers/NavigatorServiceWorker.cpp
|
| index 73160f042ade6669ce253c8138413baca46ac274..ea09389dd824fe6804084a897e33bf4620136458 100644
|
| --- a/third_party/WebKit/Source/modules/serviceworkers/NavigatorServiceWorker.cpp
|
| +++ b/third_party/WebKit/Source/modules/serviceworkers/NavigatorServiceWorker.cpp
|
| @@ -26,14 +26,16 @@ NavigatorServiceWorker& NavigatorServiceWorker::from(Navigator& navigator) {
|
| if (!supplement) {
|
| supplement = new NavigatorServiceWorker(navigator);
|
| provideTo(navigator, supplementName(), supplement);
|
| - if (navigator.frame() &&
|
| - navigator.frame()
|
| - ->securityContext()
|
| - ->getSecurityOrigin()
|
| - ->canAccessServiceWorkers()) {
|
| - // Initialize ServiceWorkerContainer too.
|
| - supplement->serviceWorker(navigator.frame(), ASSERT_NO_EXCEPTION);
|
| - }
|
| + }
|
| + if (navigator.frame() &&
|
| + navigator.frame()
|
| + ->securityContext()
|
| + ->getSecurityOrigin()
|
| + ->canAccessServiceWorkers()) {
|
| + // Ensure ServiceWorkerContainer. It can be cleared regardless of
|
| + // |supplement|. See comments in NavigatorServiceWorker::serviceWorker() for
|
| + // details.
|
| + supplement->serviceWorker(navigator.frame(), ASSERT_NO_EXCEPTION);
|
| }
|
| return *supplement;
|
| }
|
|
|