summaryrefslogtreecommitdiffstats
path: root/WebCore/plugins
diff options
context:
space:
mode:
authorGrace Kloba <klobag@google.com>2010-03-16 11:40:52 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2010-03-16 11:40:52 -0700
commitdb3aade0d5051d42694e105fd3ebf30e1986232b (patch)
treecc830aebd10aa486b07da592685070b63b8253f9 /WebCore/plugins
parent6b2f5b07a28fdd79f0e164906828083142dc4721 (diff)
parent03e582959aa09ce855f187e3a47a48062b60a5ff (diff)
downloadexternal_webkit-db3aade0d5051d42694e105fd3ebf30e1986232b.zip
external_webkit-db3aade0d5051d42694e105fd3ebf30e1986232b.tar.gz
external_webkit-db3aade0d5051d42694e105fd3ebf30e1986232b.tar.bz2
Merge "Fix the V8 NPObject reference count problem."
Diffstat (limited to 'WebCore/plugins')
-rw-r--r--WebCore/plugins/PluginView.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/WebCore/plugins/PluginView.cpp b/WebCore/plugins/PluginView.cpp
index a6a0cf7..dc2b832 100644
--- a/WebCore/plugins/PluginView.cpp
+++ b/WebCore/plugins/PluginView.cpp
@@ -831,7 +831,9 @@ NPObject* PluginView::getNPObject() {
if (npErr != NPERR_NO_ERROR || !object)
return 0;
- _NPN_ReleaseObject(object);
+ // Bindings::CInstance (used in JSC version) retains the object, so in ~PluginView() it calls
+ // cleanupScriptObjectsForPlugin() to releases the object. To maintain the reference count,
+ // don't call _NPN_ReleaseObject(object) here.
return object;
#else
return 0;