diff options
author | jorlow@chromium.org <jorlow@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-05-21 10:45:48 +0000 |
---|---|---|
committer | jorlow@chromium.org <jorlow@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-05-21 10:45:48 +0000 |
commit | 57d37ae3f7b4b3d020a7bf164e8be321f2babf1e (patch) | |
tree | d6abdfc18bd3cf44025b7704cba1e52de0281e06 | |
parent | 2748f01eb5a186ad68f7bd62948d72e172c7546b (diff) | |
download | chromium_src-57d37ae3f7b4b3d020a7bf164e8be321f2babf1e.zip chromium_src-57d37ae3f7b4b3d020a7bf164e8be321f2babf1e.tar.gz chromium_src-57d37ae3f7b4b3d020a7bf164e8be321f2babf1e.tar.bz2 |
IndexedDB should use WebSecurityOrigins rather than passing origin strings
The Chromium side of https://bugs.webkit.org/show_bug.cgi?id=39216 which (among other things) switches WebCore/WebKit to use SecurityOrigin/WebSecurityOrigins. I'm also switching it to use databaseIdentifiers (rather than just toString) since its semantics match HTML5's origins (and toStrings do not).
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/2097005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47907 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/in_process_webkit/indexed_db_dispatcher_host.cc | 5 | ||||
-rw-r--r-- | chrome/renderer/renderer_webindexeddatabase_impl.cc | 13 | ||||
-rw-r--r-- | chrome/renderer/renderer_webindexeddatabase_impl.h | 3 |
3 files changed, 13 insertions, 8 deletions
diff --git a/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.cc b/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.cc index 7a114b1..2e32dfb 100644 --- a/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.cc +++ b/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.cc @@ -12,9 +12,11 @@ #include "third_party/WebKit/WebKit/chromium/public/WebIDBDatabase.h" #include "third_party/WebKit/WebKit/chromium/public/WebIDBDatabaseError.h" #include "third_party/WebKit/WebKit/chromium/public/WebIndexedDatabase.h" +#include "third_party/WebKit/WebKit/chromium/public/WebSecurityOrigin.h" using WebKit::WebIDBDatabase; using WebKit::WebIDBDatabaseError; +using WebKit::WebSecurityOrigin; IndexedDBDispatcherHost::IndexedDBDispatcherHost( IPC::Message::Sender* sender, WebKitContext* webkit_context) @@ -131,7 +133,8 @@ void IndexedDBDispatcherHost::OnIndexedDatabaseOpen( Context()->GetIndexedDatabase()->open( params.name_, params.description_, params.modify_database_, new IndexedDatabaseOpenCallbacks(this, params.response_id_), - params.origin_, NULL, exception_code); + WebSecurityOrigin::createFromDatabaseIdentifier(params.origin_), NULL, + exception_code); // ViewHostMsg_IndexedDatabaseOpen is async because we assume the exception // code is always 0 in the renderer side. DCHECK(exception_code == 0); diff --git a/chrome/renderer/renderer_webindexeddatabase_impl.cc b/chrome/renderer/renderer_webindexeddatabase_impl.cc index e472a8b2..668823f 100644 --- a/chrome/renderer/renderer_webindexeddatabase_impl.cc +++ b/chrome/renderer/renderer_webindexeddatabase_impl.cc @@ -8,10 +8,11 @@ #include "chrome/renderer/indexed_db_dispatcher.h" #include "third_party/WebKit/WebKit/chromium/public/WebString.h" +using WebKit::WebFrame; using WebKit::WebIDBCallbacks; using WebKit::WebIDBDatabase; +using WebKit::WebSecurityOrigin; using WebKit::WebString; -using WebKit::WebFrame; RendererWebIndexedDatabaseImpl::RendererWebIndexedDatabaseImpl() { } @@ -21,11 +22,11 @@ RendererWebIndexedDatabaseImpl::~RendererWebIndexedDatabaseImpl() { void RendererWebIndexedDatabaseImpl::open( const WebString& name, const WebString& description, bool modify_database, - WebIDBCallbacks* callbacks, const WebString& origin, WebFrame* web_frame, - int& exception_code) { + WebIDBCallbacks* callbacks, const WebSecurityOrigin& origin, + WebFrame* web_frame, int& exception_code) { IndexedDBDispatcher* dispatcher = RenderThread::current()->indexed_db_dispatcher(); - dispatcher->RequestIndexedDatabaseOpen(name, description, modify_database, - callbacks, origin, web_frame, - &exception_code); + dispatcher->RequestIndexedDatabaseOpen( + name, description, modify_database, callbacks, + origin.databaseIdentifier(), web_frame, &exception_code); } diff --git a/chrome/renderer/renderer_webindexeddatabase_impl.h b/chrome/renderer/renderer_webindexeddatabase_impl.h index 6cc73f2d..06a6ee0 100644 --- a/chrome/renderer/renderer_webindexeddatabase_impl.h +++ b/chrome/renderer/renderer_webindexeddatabase_impl.h @@ -11,6 +11,7 @@ namespace WebKit { class WebFrame; class WebIDBDatabase; +class WebSecurityOrigin; class WebString; } @@ -23,7 +24,7 @@ class RendererWebIndexedDatabaseImpl : public WebKit::WebIndexedDatabase { virtual void open( const WebKit::WebString& name, const WebKit::WebString& description, bool modify_database, WebKit::WebIDBCallbacks* callbacks, - const WebKit::WebString& origin, WebKit::WebFrame* web_frame, + const WebKit::WebSecurityOrigin& origin, WebKit::WebFrame* web_frame, int& exception_code); }; |