summaryrefslogtreecommitdiffstats
path: root/webkit/plugins/ppapi/plugin_object.cc
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-18 21:57:50 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-18 21:57:50 +0000
commit77ac44f19b5d1ead7c1b29900341fbfc07286ce6 (patch)
treea09b9951a19ca4a322fbd37a82438ed5e38ae44d /webkit/plugins/ppapi/plugin_object.cc
parent6b292e3db6ccdda0477289b3d8c713f2707ae9ff (diff)
downloadchromium_src-77ac44f19b5d1ead7c1b29900341fbfc07286ce6.zip
chromium_src-77ac44f19b5d1ead7c1b29900341fbfc07286ce6.tar.gz
chromium_src-77ac44f19b5d1ead7c1b29900341fbfc07286ce6.tar.bz2
Add a new globals object for PPAPI tracking information.
This adds a specialization on the host and plugin side of the proxy. This replaces the ad-hoc singleton tracking done by the resource and var trackers with just being getters on this global object. Most code can use the single PpapiGlobals class. I also allow code to get the host and plugin specializations since some code needs access to some specific features of each side. In a later pass I'll move the other stuff out of TrackerBase and delete it. TEST=none BUG=none Review URL: http://codereview.chromium.org/8316008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106142 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/plugins/ppapi/plugin_object.cc')
-rw-r--r--webkit/plugins/ppapi/plugin_object.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/webkit/plugins/ppapi/plugin_object.cc b/webkit/plugins/ppapi/plugin_object.cc
index 7b58456..fbbd349 100644
--- a/webkit/plugins/ppapi/plugin_object.cc
+++ b/webkit/plugins/ppapi/plugin_object.cc
@@ -15,6 +15,7 @@
#include "ppapi/c/dev/ppp_class_deprecated.h"
#include "ppapi/c/pp_resource.h"
#include "ppapi/c/pp_var.h"
+#include "ppapi/shared_impl/ppapi_globals.h"
#include "ppapi/shared_impl/var.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebBindings.h"
#include "webkit/plugins/ppapi/npapi_glue.h"
@@ -23,6 +24,7 @@
#include "webkit/plugins/ppapi/resource_tracker.h"
#include "webkit/plugins/ppapi/string.h"
+using ppapi::PpapiGlobals;
using ppapi::StringVar;
using ppapi::Var;
using WebKit::WebBindings;
@@ -150,7 +152,7 @@ bool WrapperClass_SetProperty(NPObject* object, NPIdentifier property_name,
accessor.object()->ppp_class()->SetProperty(
accessor.object()->ppp_class_data(), accessor.identifier(), value_var,
result_converter.exception());
- ResourceTracker::Get()->GetVarTracker()->ReleaseVar(value_var);
+ PpapiGlobals::Get()->GetVarTracker()->ReleaseVar(value_var);
return result_converter.CheckExceptionForNoResult();
}
@@ -215,7 +217,7 @@ bool WrapperClass_Enumerate(NPObject* object, NPIdentifier** values,
// Release the PP_Var that the plugin allocated. On success, they will all
// be converted to NPVariants, and on failure, we want them to just go away.
- ::ppapi::VarTracker* var_tracker = ResourceTracker::Get()->GetVarTracker();
+ ::ppapi::VarTracker* var_tracker = PpapiGlobals::Get()->GetVarTracker();
for (uint32_t i = 0; i < property_count; ++i)
var_tracker->ReleaseVar(properties[i]);
free(properties);