summaryrefslogtreecommitdiffstats
path: root/WebKit/android
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2011-03-04 10:24:10 +0000
committerBen Murdoch <benm@google.com>2011-03-09 20:36:47 +0000
commit1d7cc17ccbeabb654e416c598e2631ff691166ca (patch)
treec6e3636a1799ccede01c9aebb0ca777e0fba09ab /WebKit/android
parent12db9a6492824cedb54ec0cd640e686a7af09e91 (diff)
downloadexternal_webkit-1d7cc17ccbeabb654e416c598e2631ff691166ca.zip
external_webkit-1d7cc17ccbeabb654e416c598e2631ff691166ca.tar.gz
external_webkit-1d7cc17ccbeabb654e416c598e2631ff691166ca.tar.bz2
Clear DOM storage when clearing other cached data.
Empty out DOM local and session storage in addition to HTML5 database and app cache when we get a request from java to delete cached data. Bug: 2117649 Change-Id: I5b6ee075d2a8fb44ee373ad4462a33623c9c2460
Diffstat (limited to 'WebKit/android')
-rw-r--r--WebKit/android/jni/WebStorage.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/WebKit/android/jni/WebStorage.cpp b/WebKit/android/jni/WebStorage.cpp
index ebe840b..ca3ccc6 100644
--- a/WebKit/android/jni/WebStorage.cpp
+++ b/WebKit/android/jni/WebStorage.cpp
@@ -29,6 +29,7 @@
#include "JavaSharedClient.h"
#include "KURL.h"
+#include "PageGroup.h"
#include "WebCoreJni.h"
#include <JNIHelp.h>
@@ -137,6 +138,12 @@ static void DeleteAllData(JNIEnv* env, jobject obj)
int size = manifestUrls.size();
for (int i = 0; i < size; ++i)
WebCore::cacheStorage().deleteCacheGroup(manifestUrls[i]);
+
+ // FIXME: this is a workaround for eliminating any DOM Storage data (both
+ // session and local storage) as there is no functionality inside WebKit at the
+ // moment to do it. That functionality is a WIP in https://bugs.webkit.org/show_bug.cgi?id=51878
+ // and when that patch lands and we merge it, we should move towards that approach instead.
+ WebCore::PageGroup::clearDomStorage();
}
static void SetAppCacheMaximumSize(JNIEnv* env, jobject obj, unsigned long long size)