Title: [88921] trunk/Source/WebKit/chromium
Revision
88921
Author
[email protected]
Date
2011-06-15 06:17:18 -0700 (Wed, 15 Jun 2011)

Log Message

2011-06-14  Hans Wennborg  <[email protected]>

        Reviewed by Tony Gentilcore.

        IndexedDB: LevelDB doesn't do incognito mode; fall back to SQLite.
        https://bugs.webkit.org/show_bug.cgi?id=62633

        LevelDB does not support in-memory databases. Fall back to SQLite
        for incognito mode browsing. This will be tested by browser_tests
        in Chromium.

        * src/WebIDBFactoryImpl.cpp:
        (WebKit::WebIDBFactoryImpl::open):

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (88920 => 88921)


--- trunk/Source/WebKit/chromium/ChangeLog	2011-06-15 12:09:18 UTC (rev 88920)
+++ trunk/Source/WebKit/chromium/ChangeLog	2011-06-15 13:17:18 UTC (rev 88921)
@@ -1,3 +1,17 @@
+2011-06-14  Hans Wennborg  <[email protected]>
+
+        Reviewed by Tony Gentilcore.
+
+        IndexedDB: LevelDB doesn't do incognito mode; fall back to SQLite.
+        https://bugs.webkit.org/show_bug.cgi?id=62633
+
+        LevelDB does not support in-memory databases. Fall back to SQLite
+        for incognito mode browsing. This will be tested by browser_tests
+        in Chromium.
+
+        * src/WebIDBFactoryImpl.cpp:
+        (WebKit::WebIDBFactoryImpl::open):
+
 2011-06-10  Yury Semikhatsky  <[email protected]>
 
         Reviewed by Dmitry Titov.

Modified: trunk/Source/WebKit/chromium/src/WebIDBFactoryImpl.cpp (88920 => 88921)


--- trunk/Source/WebKit/chromium/src/WebIDBFactoryImpl.cpp	2011-06-15 12:09:18 UTC (rev 88920)
+++ trunk/Source/WebKit/chromium/src/WebIDBFactoryImpl.cpp	2011-06-15 13:17:18 UTC (rev 88921)
@@ -75,16 +75,21 @@
 {
     WebString path = dataDir;
     if (overriddenBackingStoreType != DefaultBackingStore) {
+        // Backing store type overridden by LayoutTestController.
         backingStoreType = overriddenBackingStoreType;
 
-        // The dataDir is empty for two reasons: LevelDB in icognito mode or
-        // LevelDB from DumpRenderTree. The first case is taken care of inside
-        // IDBFactoryBackendImpl.cpp by forcing SQLITE backend for incognito.
-        // For the DumpRenderTree case we need to keep track of the location
-        // so we can wipe it out when we're done with the test.
-        if (dataDir.isEmpty() && backingStoreType == LevelDBBackingStore)
+        // dataDir is empty for layout tests.
+        ASSERT(dataDir.isEmpty());
+
+        if (backingStoreType == LevelDBBackingStore) {
+            // LevelDB doesn't support in-memory databases, so use a temporary folder.
             path = tempDatabaseFolder;
+        }
+    } else if (dataDir.isEmpty() && backingStoreType == LevelDBBackingStore) {
+        // Fall back to SQLite for incognito mode.
+        backingStoreType = SQLiteBackingStore;
     }
+
     m_idbFactoryBackend->open(name, IDBCallbacksProxy::create(adoptPtr(callbacks)), origin, 0, path, maximumSize, static_cast<IDBFactoryBackendInterface::BackingStoreType>(backingStoreType));
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to