summaryrefslogtreecommitdiff
path: root/core/java/android/webkit/BrowserFrame.java
diff options
context:
space:
mode:
authorSteve Block <steveblock@google.com>2010-12-07 18:18:26 +0000
committerSteve Block <steveblock@google.com>2010-12-07 20:16:13 +0000
commit689a342b0f8badbc87e67938f7a2fd3798e6f8eb (patch)
tree1a9d214d9b4fc420c4b01470e5ba2b61124bd598 /core/java/android/webkit/BrowserFrame.java
parent9aa6ea83869ee3e8c6f694ca77346168c0160149 (diff)
Add WebView.removeJavascriptInterface()
Bug: 3234178 Change-Id: I7136f8d76b20f90a7e9e1c55b6755ffe6c35b77b
Diffstat (limited to 'core/java/android/webkit/BrowserFrame.java')
-rw-r--r--core/java/android/webkit/BrowserFrame.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/core/java/android/webkit/BrowserFrame.java b/core/java/android/webkit/BrowserFrame.java
index 8f9245822202..2c38c93ede6f 100644
--- a/core/java/android/webkit/BrowserFrame.java
+++ b/core/java/android/webkit/BrowserFrame.java
@@ -599,13 +599,20 @@ class BrowserFrame extends Handler {
public void addJavascriptInterface(Object obj, String interfaceName) {
assert obj != null;
+ removeJavascriptInterface(interfaceName);
if (mJSInterfaceMap == null) {
mJSInterfaceMap = new HashMap<String, Object>();
}
+ mJSInterfaceMap.put(interfaceName, obj);
+ }
+
+ public void removeJavascriptInterface(String interfaceName) {
+ if (mJSInterfaceMap == null) {
+ return;
+ }
if (mJSInterfaceMap.containsKey(interfaceName)) {
mJSInterfaceMap.remove(interfaceName);
}
- mJSInterfaceMap.put(interfaceName, obj);
}
/**