Title: [188272] branches/safari-601.1-branch/Source/WebCore
Revision
188272
Author
[email protected]
Date
2015-08-11 12:32:54 -0700 (Tue, 11 Aug 2015)

Log Message

Merge r187758. rdar://problem/22095006

Modified Paths

Diff

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (188271 => 188272)


--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-08-11 19:27:12 UTC (rev 188271)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-08-11 19:32:54 UTC (rev 188272)
@@ -1,3 +1,20 @@
+2015-08-11  Matthew Hanson  <[email protected]>
+
+        Merge r187758. rdar://problem/22095006
+
+    2015-08-03  Anders Carlsson  <[email protected]>
+
+            Safari is failing to remove SQLite Databases via Remove All Website Data
+            https://bugs.webkit.org/show_bug.cgi?id=147584
+            rdar://problem/22095006
+
+            Reviewed by Brady Eidson.
+
+            If we end up deleting every single database for an origin, make sure to also delete the origin.
+
+            * Modules/webdatabase/DatabaseTracker.cpp:
+            (WebCore::DatabaseTracker::deleteDatabasesModifiedSince):
+
 2015-08-10  Dana Burkart  <[email protected]>
 
         Merge r188182. rdar://problem/21254835

Modified: branches/safari-601.1-branch/Source/WebCore/Modules/webdatabase/DatabaseTracker.cpp (188271 => 188272)


--- branches/safari-601.1-branch/Source/WebCore/Modules/webdatabase/DatabaseTracker.cpp	2015-08-11 19:27:12 UTC (rev 188271)
+++ branches/safari-601.1-branch/Source/WebCore/Modules/webdatabase/DatabaseTracker.cpp	2015-08-11 19:32:54 UTC (rev 188272)
@@ -862,6 +862,8 @@
         if (!databaseNamesForOrigin(origin.get(), databaseNames))
             continue;
 
+        size_t deletedDatabases = 0;
+
         for (auto& databaseName : databaseNames) {
             auto fullPath = fullPathForDatabase(origin.get(), databaseName, false);
 
@@ -873,7 +875,11 @@
                 continue;
 
             deleteDatabase(origin.get(), databaseName);
+            ++deletedDatabases;
         }
+
+        if (deletedDatabases == databaseNames.size())
+            deleteOrigin(origin.get());
     }
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to