Title: [150979] branches/safari-537.43-branch/Source/WebKit2
- Revision
- 150979
- Author
- [email protected]
- Date
- 2013-05-30 13:53:15 -0700 (Thu, 30 May 2013)
Log Message
Merged r150925. <rdar://problem/13976781>
Modified Paths
Diff
Modified: branches/safari-537.43-branch/Source/WebKit2/ChangeLog (150978 => 150979)
--- branches/safari-537.43-branch/Source/WebKit2/ChangeLog 2013-05-30 20:51:44 UTC (rev 150978)
+++ branches/safari-537.43-branch/Source/WebKit2/ChangeLog 2013-05-30 20:53:15 UTC (rev 150979)
@@ -1,5 +1,23 @@
2013-05-30 Lucas Forschler <[email protected]>
+ Merge r150925
+
+ 2013-05-29 Anders Carlsson <[email protected]>
+
+ Return earlier if there's no session storage namespace
+ https://bugs.webkit.org/show_bug.cgi?id=116984
+ <rdar://problem/13976781>
+
+ Reviewed by Tim Horton.
+
+ If we can't find a session storage namespace, return before creating an entry in the m_storageAreasByConnection
+ hash map since then we'll crash trying to remove it later.
+
+ * UIProcess/Storage/StorageManager.cpp:
+ (WebKit::StorageManager::createSessionStorageMap):
+
+2013-05-30 Lucas Forschler <[email protected]>
+
Merge r150648
2013-05-24 Anders Carlsson <[email protected]>
Modified: branches/safari-537.43-branch/Source/WebKit2/UIProcess/Storage/StorageManager.cpp (150978 => 150979)
--- branches/safari-537.43-branch/Source/WebKit2/UIProcess/Storage/StorageManager.cpp 2013-05-30 20:51:44 UTC (rev 150978)
+++ branches/safari-537.43-branch/Source/WebKit2/UIProcess/Storage/StorageManager.cpp 2013-05-30 20:53:15 UTC (rev 150979)
@@ -461,6 +461,15 @@
void StorageManager::createSessionStorageMap(CoreIPC::Connection* connection, uint64_t storageMapID, uint64_t storageNamespaceID, const SecurityOriginData& securityOriginData)
{
+ // FIXME: This should be a message check.
+ ASSERT((HashMap<uint64_t, RefPtr<SessionStorageNamespace>>::isValidKey(storageNamespaceID)));
+ SessionStorageNamespace* sessionStorageNamespace = m_sessionStorageNamespaces.get(storageNamespaceID);
+ if (!sessionStorageNamespace) {
+ // We're getting an incoming message from the web process that's for session storage for a web page
+ // that has already been closed, just ignore it.
+ return;
+ }
+
std::pair<RefPtr<CoreIPC::Connection>, uint64_t> connectionAndStorageMapIDPair(connection, storageMapID);
// FIXME: This should be a message check.
@@ -471,14 +480,6 @@
// FIXME: This should be a message check.
ASSERT(result.isNewEntry);
- ASSERT((HashMap<uint64_t, RefPtr<SessionStorageNamespace>>::isValidKey(storageNamespaceID)));
- SessionStorageNamespace* sessionStorageNamespace = m_sessionStorageNamespaces.get(storageNamespaceID);
- if (!sessionStorageNamespace) {
- // We're getting an incoming message from the web process that's for session storage for a web page
- // that has already been closed, just ignore it.
- return;
- }
-
// FIXME: This should be a message check.
ASSERT(connection == sessionStorageNamespace->allowedConnection());
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes