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

Unified Diff: content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.cc

Issue 18570003: Move Renderer-side NPObject owner tracking to JavaBridgeChannel. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Move some comment cleanup to crrev.com/17428003 Created 7 years, 6 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
Index: content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.cc
diff --git a/content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.cc b/content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.cc
index bac38564e79fe8bb9bef3ea25f0f3a4a34cd44bf..3e9fd4eeaeea181aabfacea8d4385feec7b39b29 100644
--- a/content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.cc
+++ b/content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.cc
@@ -20,7 +20,10 @@ namespace content {
JavaBridgeDispatcherHostManager::JavaBridgeDispatcherHostManager(
WebContents* web_contents)
- : WebContentsObserver(web_contents) {
+ : WebContentsObserver(web_contents),
+ object_owner_id_(new struct _NPP) {
+ // Register a dummy owner Id for JavaBoundObject instances.
+ WebKit::WebBindings::registerObjectOwner(object_owner_id_.get());
}
JavaBridgeDispatcherHostManager::~JavaBridgeDispatcherHostManager() {
@@ -29,6 +32,8 @@ JavaBridgeDispatcherHostManager::~JavaBridgeDispatcherHostManager() {
WebKit::WebBindings::releaseObject(iter->second);
}
DCHECK_EQ(0U, instances_.size());
+
+ WebKit::WebBindings::unregisterObjectOwner(object_owner_id_.get());
}
void JavaBridgeDispatcherHostManager::AddNamedObject(const string16& name,

Powered by Google App Engine
This is Rietveld 408576698