[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.21-584-g1e41756
jorlow at chromium.org
jorlow at chromium.org
Fri Feb 26 22:20:40 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit 600187695333c1ae1217a2d21f2e33a3dfccec12
Author: jorlow at chromium.org <jorlow at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Feb 16 00:25:52 2010 +0000
[Chromium] Fix StorageNamespaceProxy::copy() for test shell
https://bugs.webkit.org/show_bug.cgi?id=34949
Reviewed by Darin Fisher.
Chromium passes back NULL when you call WebStorageNamespace::proxy()
but TestShell returns a valid object. Both need to work via
the WebStorageNamespace.
* src/StorageNamespaceProxy.cpp:
(WebCore::StorageNamespaceProxy::copy):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@54803 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/chromium/ChangeLog b/WebKit/chromium/ChangeLog
index 2ab92e1..4c27dde 100644
--- a/WebKit/chromium/ChangeLog
+++ b/WebKit/chromium/ChangeLog
@@ -1,3 +1,17 @@
+2010-02-15 Jeremy Orlow <jorlow at chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [Chromium] Fix StorageNamespaceProxy::copy() for test shell
+ https://bugs.webkit.org/show_bug.cgi?id=34949
+
+ Chromium passes back NULL when you call WebStorageNamespace::proxy()
+ but TestShell returns a valid object. Both need to work via
+ the WebStorageNamespace.
+
+ * src/StorageNamespaceProxy.cpp:
+ (WebCore::StorageNamespaceProxy::copy):
+
2010-02-14 Vangelis Kokkevis <vangelis at chromium.org>
Reviewed by Darin Fisher.
diff --git a/WebKit/chromium/src/StorageNamespaceProxy.cpp b/WebKit/chromium/src/StorageNamespaceProxy.cpp
index 1be1967..3c87554 100644
--- a/WebKit/chromium/src/StorageNamespaceProxy.cpp
+++ b/WebKit/chromium/src/StorageNamespaceProxy.cpp
@@ -67,13 +67,14 @@ StorageNamespaceProxy::~StorageNamespaceProxy()
PassRefPtr<StorageNamespace> StorageNamespaceProxy::copy()
{
ASSERT(m_storageType == SessionStorage);
- // The WebViewClient knows what its session storage namespace id is but we
- // do not. Returning 0 here causes it to be fetched (via the WebViewClient)
- // on its next use. Note that it is WebViewClient::createView's
- // responsibility to clone the session storage namespace id and that the
- // only time copy() is called is directly after the createView call...which
- // is why all of this is safe.
- return 0;
+ WebKit::WebStorageNamespace* newNamespace = m_storageNamespace->copy();
+ // Some embedders hook into WebViewClient::createView to make the copy of
+ // session storage and then return the object lazily. Other embedders
+ // choose to make the copy now and return a pointer immediately. So handle
+ // both cases.
+ if (!newNamespace)
+ return 0;
+ return adoptRef(new StorageNamespaceProxy(newNamespace, m_storageType));
}
PassRefPtr<StorageArea> StorageNamespaceProxy::storageArea(PassRefPtr<SecurityOrigin> origin)
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list