Index: chrome/renderer/renderer_webstoragenamespace_impl.cc |
=================================================================== |
--- chrome/renderer/renderer_webstoragenamespace_impl.cc (revision 36257) |
+++ chrome/renderer/renderer_webstoragenamespace_impl.cc (working copy) |
@@ -15,14 +15,15 @@ |
RendererWebStorageNamespaceImpl::RendererWebStorageNamespaceImpl( |
DOMStorageType storage_type) |
: storage_type_(storage_type), |
- namespace_id_(kUninitializedNamespaceId) { |
+ namespace_id_(kLocalStorageNamespaceId) { |
+ DCHECK(storage_type == DOM_STORAGE_LOCAL); |
} |
RendererWebStorageNamespaceImpl::RendererWebStorageNamespaceImpl( |
DOMStorageType storage_type, int64 namespace_id) |
: storage_type_(storage_type), |
namespace_id_(namespace_id) { |
- DCHECK(namespace_id_ != kUninitializedNamespaceId); |
+ DCHECK(storage_type == DOM_STORAGE_SESSION); |
} |
RendererWebStorageNamespaceImpl::~RendererWebStorageNamespaceImpl() { |
@@ -30,34 +31,16 @@ |
WebStorageArea* RendererWebStorageNamespaceImpl::createStorageArea( |
const WebString& origin) { |
- // This could be done async in the background (started when this class is |
- // first instantiated) rather than lazily on first use, but it's unclear |
- // whether it's worth the complexity. |
- if (namespace_id_ == kUninitializedNamespaceId) { |
- RenderThread::current()->Send( |
- new ViewHostMsg_DOMStorageNamespaceId(storage_type_, |
- &namespace_id_)); |
- DCHECK(namespace_id_ != kUninitializedNamespaceId); |
- } |
// Ideally, we'd keep a hash map of origin to these objects. Unfortunately |
// this doesn't seem practical because there's no good way to ref-count these |
- // objects, and it'd be unclear who owned them. So, instead, we'll pay a |
- // price for an allocaiton and IPC for each. |
+ // objects, and it'd be unclear who owned them. So, instead, we'll pay the |
+ // price in terms of wasted memory. |
return new RendererWebStorageAreaImpl(namespace_id_, origin); |
} |
WebStorageNamespace* RendererWebStorageNamespaceImpl::copy() { |
- // If we haven't been used yet, we might as well start out fresh (and lazy). |
- if (namespace_id_ == kUninitializedNamespaceId) |
- return new RendererWebStorageNamespaceImpl(storage_type_); |
- |
- // This cannot easily be deferred because we need a snapshot in time. |
- int64 new_namespace_id; |
- RenderThread::current()->Send( |
- new ViewHostMsg_DOMStorageCloneNamespaceId(namespace_id_, |
- &new_namespace_id)); |
- return new RendererWebStorageNamespaceImpl(storage_type_, |
- new_namespace_id); |
+ NOTREACHED(); // We shouldn't ever reach this code in Chromium. |
+ return NULL; |
} |
void RendererWebStorageNamespaceImpl::close() { |