diff options
author | tschmelcher@chromium.org <tschmelcher@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-24 19:51:34 +0000 |
---|---|---|
committer | tschmelcher@chromium.org <tschmelcher@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-24 19:51:34 +0000 |
commit | 487cdb981acfce9c2bfca41f6bdd20718da22010 (patch) | |
tree | 940dceff89d72c4424effbd789ff9e31d83604f7 /o3d | |
parent | 8669c22b836bb920aec2d83b9316709afa33e4cb (diff) | |
download | chromium_src-487cdb981acfce9c2bfca41f6bdd20718da22010.zip chromium_src-487cdb981acfce9c2bfca41f6bdd20718da22010.tar.gz chromium_src-487cdb981acfce9c2bfca41f6bdd20718da22010.tar.bz2 |
Fix IE crash regression from r66344.
TEST=pending: build and load in IE
BUG=none
Review URL: http://codereview.chromium.org/5325002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67296 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'o3d')
-rw-r--r-- | o3d/plugin/cross/main.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/o3d/plugin/cross/main.cc b/o3d/plugin/cross/main.cc index 575d524..98b12b8 100644 --- a/o3d/plugin/cross/main.cc +++ b/o3d/plugin/cross/main.cc @@ -177,6 +177,11 @@ void NPP_URLNotify(NPP instance, const char *url, NPReason reason, NPError NPP_GetValue(NPP instance, NPPVariable variable, void *value) { HANDLE_CRASHES; + if (!instance) { + // Our ActiveX wrapper calls us like this as a way of saying that what it + // really wants to call is NP_GetValue(). :/ + return o3d::NP_GetValue(variable, value); + } PluginObject *obj = static_cast<PluginObject *>(instance->pdata); if (!obj) { return NPERR_INVALID_PARAM; @@ -195,6 +200,8 @@ NPError NPP_GetValue(NPP instance, NPPVariable variable, void *value) { default: { NPError ret = PlatformNPPGetValue(obj, variable, value); if (ret == NPERR_INVALID_PARAM) + // TODO(tschmelcher): Do we still need to fall back to this now that we + // have the ActiveX special case above? ret = o3d::NP_GetValue(variable, value); return ret; } |