Commit bcfc3dce authored by Tobias Sargeant's avatar Tobias Sargeant Committed by Commit Bot

Allow AppWebMessagePort mHandler to be reset to null.

Nothing currently prevents a WebView application calling
setWebMessageCallback multiple times.

If a handler has previously been set via setMessageCallback, then it is
currently impossible to reset it back to null, meaning that the effect
of passing null for handler differs depending on previous calls.

Bug: 798449
Change-Id: I93dd8fbb3a5dce7be0b787ee78fecf739f7c4199
Reviewed-on: https://chromium-review.googlesource.com/847486
Commit-Queue: Tobias Sargeant <tobiasjs@chromium.org>
Reviewed-by: default avatarBo <boliu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#526525}
parent bb5cf034
...@@ -175,6 +175,8 @@ public class AppWebMessagePort implements MessagePort { ...@@ -175,6 +175,8 @@ public class AppWebMessagePort implements MessagePort {
mMessageCallback = messageCallback; mMessageCallback = messageCallback;
if (handler != null) { if (handler != null) {
mHandler = new MessageHandler(handler.getLooper()); mHandler = new MessageHandler(handler.getLooper());
} else {
mHandler = null;
} }
} }
nativeStartReceivingMessages(mNativeAppWebMessagePort); nativeStartReceivingMessages(mNativeAppWebMessagePort);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment