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

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

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.h
diff --git a/content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.h b/content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.h
index 6fb7aab7cfb02482a2dfbdb2d7392c9647b0b47a..7631a0f0d3edd7314acb571c632f79e4e8ea2303 100644
--- a/content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.h
+++ b/content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.h
@@ -11,11 +11,13 @@
#include "base/android/scoped_java_ref.h"
#include "base/compiler_specific.h"
#include "base/memory/ref_counted.h"
+#include "base/memory/scoped_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/strings/string16.h"
#include "content/public/browser/web_contents_observer.h"
struct NPObject;
+struct _NPP;
namespace content {
class JavaBridgeDispatcherHost;
@@ -54,6 +56,10 @@ class JavaBridgeDispatcherHostManager
void JavaBoundObjectCreated(const base::android::JavaRef<jobject>& object);
void JavaBoundObjectDestroyed(const base::android::JavaRef<jobject>& object);
+ // Returns the NPObject owner identifier to use when creating new
+ // JavaBoundObject instances, to mark them as owned by this manager.
+ struct _NPP* object_owner_id() { return object_owner_id_.get(); }
+
private:
typedef std::map<RenderViewHost*, scoped_refptr<JavaBridgeDispatcherHost> >
InstanceMap;
@@ -62,6 +68,9 @@ class JavaBridgeDispatcherHostManager
ObjectMap objects_;
JavaObjectWeakGlobalRef retained_object_set_;
+ // Dummy NPObject owner Id used to track JavaBoundObjects to this manager.
+ scoped_ptr<struct _NPP> object_owner_id_;
+
DISALLOW_COPY_AND_ASSIGN(JavaBridgeDispatcherHostManager);
};

Powered by Google App Engine
This is Rietveld 408576698