Index: ppapi/proxy/ppb_core_proxy.cc |
=================================================================== |
--- ppapi/proxy/ppb_core_proxy.cc (revision 100753) |
+++ ppapi/proxy/ppb_core_proxy.cc (working copy) |
@@ -75,23 +75,31 @@ |
&IsMainThread |
}; |
+InterfaceProxy* CreateCoreProxy(Dispatcher* dispatcher, |
+ const void* target_interface) { |
+ return new PPB_Core_Proxy(dispatcher, target_interface); |
+} |
+ |
} // namespace |
-PPB_Core_Proxy::PPB_Core_Proxy(Dispatcher* dispatcher) |
- : InterfaceProxy(dispatcher), |
- ppb_core_impl_(NULL) { |
- if (!dispatcher->IsPlugin()) { |
- ppb_core_impl_ = static_cast<const PPB_Core*>( |
- dispatcher->local_get_interface()(PPB_CORE_INTERFACE)); |
- } |
+PPB_Core_Proxy::PPB_Core_Proxy(Dispatcher* dispatcher, |
+ const void* target_interface) |
+ : InterfaceProxy(dispatcher, target_interface) { |
} |
PPB_Core_Proxy::~PPB_Core_Proxy() { |
} |
// static |
-const PPB_Core* PPB_Core_Proxy::GetPPB_Core_Interface() { |
- return &core_interface; |
+const InterfaceProxy::Info* PPB_Core_Proxy::GetInfo() { |
+ static const Info info = { |
+ &core_interface, |
+ PPB_CORE_INTERFACE, |
+ INTERFACE_ID_PPB_CORE, |
+ false, |
+ &CreateCoreProxy, |
+ }; |
+ return &info; |
} |
bool PPB_Core_Proxy::OnMessageReceived(const IPC::Message& msg) { |
@@ -108,11 +116,11 @@ |
} |
void PPB_Core_Proxy::OnMsgAddRefResource(const HostResource& resource) { |
- ppb_core_impl_->AddRefResource(resource.host_resource()); |
+ ppb_core_target()->AddRefResource(resource.host_resource()); |
} |
void PPB_Core_Proxy::OnMsgReleaseResource(const HostResource& resource) { |
- ppb_core_impl_->ReleaseResource(resource.host_resource()); |
+ ppb_core_target()->ReleaseResource(resource.host_resource()); |
} |
} // namespace proxy |