diff options
author | bbudge@chromium.org <bbudge@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-11-02 02:58:20 +0000 |
---|---|---|
committer | bbudge@chromium.org <bbudge@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-11-02 02:58:20 +0000 |
commit | 2e62b5bbd93fde7858733262d349ff8ea4e2cf8c (patch) | |
tree | 1e393ab5aaeca67c9620b6a24d2677866f383966 /webkit/plugins | |
parent | 80f1ce6b816549f8efdc61573cb61176146c5b10 (diff) | |
download | chromium_src-2e62b5bbd93fde7858733262d349ff8ea4e2cf8c.zip chromium_src-2e62b5bbd93fde7858733262d349ff8ea4e2cf8c.tar.gz chromium_src-2e62b5bbd93fde7858733262d349ff8ea4e2cf8c.tar.bz2 |
Don't assert if PluginInstance can't get PPP_Combined. Some tests exercise this path.
BUG=116317
TEST=nacl_integration
Review URL: https://chromiumcodereview.appspot.com/11367043
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165608 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/plugins')
-rw-r--r-- | webkit/plugins/ppapi/plugin_module.cc | 4 | ||||
-rw-r--r-- | webkit/plugins/ppapi/plugin_module.h | 4 | ||||
-rw-r--r-- | webkit/plugins/ppapi/ppapi_plugin_instance.cc | 2 |
3 files changed, 5 insertions, 5 deletions
diff --git a/webkit/plugins/ppapi/plugin_module.cc b/webkit/plugins/ppapi/plugin_module.cc index d4f7437..7bd5036 100644 --- a/webkit/plugins/ppapi/plugin_module.cc +++ b/webkit/plugins/ppapi/plugin_module.cc @@ -512,7 +512,7 @@ scoped_refptr<PluginModule> PluginModule::CreateModuleForNaClInstance() { return nacl_module; } -void PluginModule::InitAsProxiedNaCl(PluginInstance* plugin_instance) { +bool PluginModule::InitAsProxiedNaCl(PluginInstance* plugin_instance) { DCHECK(out_of_process_proxy_.get()); // InitAsProxied (for the trusted/out-of-process case) initializes only the // module, and one or more instances are added later. In this case, the @@ -522,7 +522,7 @@ void PluginModule::InitAsProxiedNaCl(PluginInstance* plugin_instance) { // In NaCl, we need to tell the instance to reset itself as proxied. This will // clear cached interface pointers and send DidCreate (etc) to the plugin // side of the proxy. - plugin_instance->ResetAsProxied(this); + return plugin_instance->ResetAsProxied(this); } // static diff --git a/webkit/plugins/ppapi/plugin_module.h b/webkit/plugins/ppapi/plugin_module.h index 4f7967d1..0761e2d 100644 --- a/webkit/plugins/ppapi/plugin_module.h +++ b/webkit/plugins/ppapi/plugin_module.h @@ -111,8 +111,8 @@ class WEBKIT_PLUGINS_EXPORT PluginModule : scoped_refptr<PluginModule> CreateModuleForNaClInstance(); // Initializes the NaCl module for the out of process proxy. InitAsProxied - // must be called before calling InitAsProxiedNaCl. - void InitAsProxiedNaCl(PluginInstance* instance); + // must be called before calling InitAsProxiedNaCl. Returns true on success. + bool InitAsProxiedNaCl(PluginInstance* instance); static const PPB_Core* GetCore(); diff --git a/webkit/plugins/ppapi/ppapi_plugin_instance.cc b/webkit/plugins/ppapi/ppapi_plugin_instance.cc index af4e370..9c20d1b 100644 --- a/webkit/plugins/ppapi/ppapi_plugin_instance.cc +++ b/webkit/plugins/ppapi/ppapi_plugin_instance.cc @@ -3134,7 +3134,7 @@ bool PluginInstance::ResetAsProxied(scoped_refptr<PluginModule> module) { PPP_Instance_Combined::Create(get_plugin_interface_func); if (!ppp_instance_combined) { // The proxy must support at least one usable PPP_Instance interface. - NOTREACHED(); + // Don't assert; some tests exercise this path. return false; } instance_interface_.reset(ppp_instance_combined); |