diff options
-rw-r--r-- | webkit/glue/plugins/plugin_lib_linux.cc | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/webkit/glue/plugins/plugin_lib_linux.cc b/webkit/glue/plugins/plugin_lib_linux.cc index 2e196ac..90a3597 100644 --- a/webkit/glue/plugins/plugin_lib_linux.cc +++ b/webkit/glue/plugins/plugin_lib_linux.cc @@ -59,6 +59,12 @@ bool ELFMatchesCurrentArchitecture(const FilePath& filename) { return false; } +// TODO(thestig) This is a hack to work around the crash in bug 25245. Remove +// this once we read plugins out of process. +bool SkipPluginUnloadHack(const WebPluginInfo& info) { + std::string filename = info.path.BaseName().value(); + return (filename.find("npo3dautoplugin") != std::string::npos); // O3D +} } // anonymous namespace namespace NPAPI { @@ -108,7 +114,8 @@ bool PluginLib::ReadWebPluginInfo(const FilePath& filename, info->desc = UTF8ToWide(description); } - base::UnloadNativeLibrary(dl); + if (!SkipPluginUnloadHack(*info)) + base::UnloadNativeLibrary(dl); return true; } |