Index: Source/core/storage/StorageArea.cpp |
diff --git a/Source/core/storage/StorageArea.cpp b/Source/core/storage/StorageArea.cpp |
index fadd88cf026e46548409ad3134790e33781177e1..55b762449078b16976dafcff42f0a5217ea5ccbd 100644 |
--- a/Source/core/storage/StorageArea.cpp |
+++ b/Source/core/storage/StorageArea.cpp |
@@ -164,9 +164,10 @@ void StorageArea::dispatchLocalStorageEvent(const String& key, const String& old |
// FIXME: We do not yet have a way to dispatch events to out-of-process frames. |
if (!frame->isLocalFrame()) |
continue; |
- Storage* storage = frame->domWindow()->optionalLocalStorage(); |
- if (storage && toLocalFrame(frame)->document()->securityOrigin()->canAccess(securityOrigin) && !isEventSource(storage, sourceAreaInstance)) |
- frame->domWindow()->enqueueWindowEvent(StorageEvent::create(EventTypeNames::storage, key, oldValue, newValue, pageURL, storage)); |
+ LocalFrame* localFrame = toLocalFrame(frame); |
+ Storage* storage = localFrame->localDOMWindow()->optionalLocalStorage(); |
+ if (storage && localFrame->document()->securityOrigin()->canAccess(securityOrigin) && !isEventSource(storage, sourceAreaInstance)) |
+ localFrame->localDOMWindow()->enqueueWindowEvent(StorageEvent::create(EventTypeNames::storage, key, oldValue, newValue, pageURL, storage)); |
} |
InspectorInstrumentation::didDispatchDOMStorageEvent(page, key, oldValue, newValue, LocalStorage, securityOrigin); |
} |
@@ -195,9 +196,10 @@ void StorageArea::dispatchSessionStorageEvent(const String& key, const String& o |
// FIXME: We do not yet have a way to dispatch events to out-of-process frames. |
if (!frame->isLocalFrame()) |
continue; |
- Storage* storage = frame->domWindow()->optionalSessionStorage(); |
- if (storage && toLocalFrame(frame)->document()->securityOrigin()->canAccess(securityOrigin) && !isEventSource(storage, sourceAreaInstance)) |
- frame->domWindow()->enqueueWindowEvent(StorageEvent::create(EventTypeNames::storage, key, oldValue, newValue, pageURL, storage)); |
+ LocalFrame* localFrame = toLocalFrame(frame); |
+ Storage* storage = localFrame->localDOMWindow()->optionalSessionStorage(); |
+ if (storage && localFrame->document()->securityOrigin()->canAccess(securityOrigin) && !isEventSource(storage, sourceAreaInstance)) |
+ localFrame->localDOMWindow()->enqueueWindowEvent(StorageEvent::create(EventTypeNames::storage, key, oldValue, newValue, pageURL, storage)); |
} |
InspectorInstrumentation::didDispatchDOMStorageEvent(page, key, oldValue, newValue, SessionStorage, securityOrigin); |
} |