summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--android_webview/java/src/org/chromium/android_webview/AwGeolocationPermissions.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/android_webview/java/src/org/chromium/android_webview/AwGeolocationPermissions.java b/android_webview/java/src/org/chromium/android_webview/AwGeolocationPermissions.java
index 7b4b945..133f597 100644
--- a/android_webview/java/src/org/chromium/android_webview/AwGeolocationPermissions.java
+++ b/android_webview/java/src/org/chromium/android_webview/AwGeolocationPermissions.java
@@ -7,7 +7,6 @@ package org.chromium.android_webview;
import android.content.SharedPreferences;
import android.webkit.ValueCallback;
-import org.chromium.base.JNINamespace;
import org.chromium.base.ThreadUtils;
import org.chromium.net.GURLUtils;
@@ -51,11 +50,18 @@ public final class AwGeolocationPermissions {
}
public void clearAll() {
+ SharedPreferences.Editor editor = null;
for (String name : mSharedPreferences.getAll().keySet()) {
if (name.startsWith(PREF_PREFIX)) {
- mSharedPreferences.edit().remove(name).apply();
+ if (editor == null) {
+ editor = mSharedPreferences.edit();
+ }
+ editor.remove(name);
}
}
+ if (editor != null) {
+ editor.apply();
+ }
}
public void getAllowed(String origin, final ValueCallback<Boolean> callback) {
@@ -70,6 +76,7 @@ public final class AwGeolocationPermissions {
}
final boolean finalAllowed = allowed;
ThreadUtils.postOnUiThread(new Runnable() {
+ @Override
public void run() {
callback.onReceiveValue(finalAllowed);
}
@@ -84,6 +91,7 @@ public final class AwGeolocationPermissions {
}
}
ThreadUtils.postOnUiThread(new Runnable() {
+ @Override
public void run() {
callback.onReceiveValue(origins);
}