Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(749)

Unified Diff: content/renderer/java/gin_java_bridge_dispatcher.cc

Issue 1018413002: [Android] Fix method invocation and wrappers cleanup handling in Java Bridge (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added a dedicated test for attempting to call a non-existing method via `call` Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/renderer/java/gin_java_bridge_dispatcher.h ('k') | content/renderer/java/gin_java_bridge_object.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/java/gin_java_bridge_dispatcher.cc
diff --git a/content/renderer/java/gin_java_bridge_dispatcher.cc b/content/renderer/java/gin_java_bridge_dispatcher.cc
index e4caa5491befc5f6d497e7bd43c35a8e34eba8d6..820c6ce3437e76ab31d19ac1473121da3a9602f0 100644
--- a/content/renderer/java/gin_java_bridge_dispatcher.cc
+++ b/content/renderer/java/gin_java_bridge_dispatcher.cc
@@ -123,9 +123,11 @@ GinJavaBridgeObject* GinJavaBridgeDispatcher::GetObject(ObjectID object_id) {
return result;
}
-void GinJavaBridgeDispatcher::OnGinJavaBridgeObjectDeleted(ObjectID object_id) {
- if (!objects_.Lookup(object_id))
- return;
+void GinJavaBridgeDispatcher::OnGinJavaBridgeObjectDeleted(
+ GinJavaBridgeObject* object) {
+ int object_id = object->object_id();
+ // Ignore cleaning up of old object wrappers.
+ if (objects_.Lookup(object_id) != object) return;
objects_.Remove(object_id);
render_frame()->Send(
new GinJavaBridgeHostMsg_ObjectWrapperDeleted(routing_id(), object_id));
« no previous file with comments | « content/renderer/java/gin_java_bridge_dispatcher.h ('k') | content/renderer/java/gin_java_bridge_object.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698