Title: [123489] trunk/Source/WebCore
Revision
123489
Author
[email protected]
Date
2012-07-24 10:11:17 -0700 (Tue, 24 Jul 2012)

Log Message

IndexedDB: Temporarily continue generating backend keys for empty key lists
https://bugs.webkit.org/show_bug.cgi?id=92012

Patch by Alec Flett <[email protected]> on 2012-07-24
Reviewed by Tony Chang.

Temporarily change key behavior to allow chromium in_process_webkit
to call putWithIndexKeys without inadvertently preventing index
key generation. Note this is temporary until frontend key generation
patch lands.

No new tests, this is part of a refactor that doesn't change behavior.

* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::putInternal):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (123488 => 123489)


--- trunk/Source/WebCore/ChangeLog	2012-07-24 17:09:07 UTC (rev 123488)
+++ trunk/Source/WebCore/ChangeLog	2012-07-24 17:11:17 UTC (rev 123489)
@@ -1,3 +1,20 @@
+2012-07-24  Alec Flett  <[email protected]>
+
+        IndexedDB: Temporarily continue generating backend keys for empty key lists
+        https://bugs.webkit.org/show_bug.cgi?id=92012
+
+        Reviewed by Tony Chang.
+
+        Temporarily change key behavior to allow chromium in_process_webkit
+        to call putWithIndexKeys without inadvertently preventing index
+        key generation. Note this is temporary until frontend key generation
+        patch lands.
+
+        No new tests, this is part of a refactor that doesn't change behavior.
+
+        * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
+        (WebCore::IDBObjectStoreBackendImpl::putInternal):
+
 2012-07-24  Pavel Feldman  <[email protected]>
 
         Web Inspector: introduce UISourceCodeFrame.

Modified: trunk/Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp (123488 => 123489)


--- trunk/Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp	2012-07-24 17:09:07 UTC (rev 123488)
+++ trunk/Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp	2012-07-24 17:11:17 UTC (rev 123489)
@@ -325,7 +325,9 @@
 
     Vector<OwnPtr<IndexWriter> > indexWriters;
     HashMap<String, IndexKeys> indexKeyMap;
-    if (indexKeys) {
+    // FIXME: Turn this into an ASSERT(indexKeys) when get-side key injection is the norm.
+    bool haveIndexKeys = indexKeys && !indexKeys->isEmpty();
+    if (haveIndexKeys) {
         for (size_t i = 0; i < indexNames->size(); ++i)
             indexKeyMap.add(indexNames->at(i), indexKeys->at(i));
     }
@@ -337,8 +339,7 @@
             continue; // The index object has been created, but does not exist in the database yet.
 
         OwnPtr<IndexWriter> indexWriter;
-        // FIXME: Turn this into an ASSERT(indexKeys) when get-side key injection is the norm.
-        if (indexKeys)
+        if (haveIndexKeys)
             indexWriter = adoptPtr(new IndexWriter(index->metadata(), indexKeyMap.get(it->first)));
         else {
             indexWriter = adoptPtr(new IndexWriter(index->metadata()));
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to