summaryrefslogtreecommitdiffstats
path: root/chrome/plugin/plugin_thread.cc
diff options
context:
space:
mode:
authorjabdelmalek@google.com <jabdelmalek@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-08-13 00:27:59 +0000
committerjabdelmalek@google.com <jabdelmalek@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-08-13 00:27:59 +0000
commit50f996cbbf716cb4a1b9027574c3b0975ad9dcef (patch)
tree9c6b617936292c8f1afce5527bb09f41476d04b6 /chrome/plugin/plugin_thread.cc
parente73c0197733c2b354d4f1c30153e64951593602a (diff)
downloadchromium_src-50f996cbbf716cb4a1b9027574c3b0975ad9dcef.zip
chromium_src-50f996cbbf716cb4a1b9027574c3b0975ad9dcef.tar.gz
chromium_src-50f996cbbf716cb4a1b9027574c3b0975ad9dcef.tar.bz2
Fix race condition in plugin
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@767 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/plugin/plugin_thread.cc')
-rw-r--r--chrome/plugin/plugin_thread.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/chrome/plugin/plugin_thread.cc b/chrome/plugin/plugin_thread.cc
index 199ab2c..4c7b872 100644
--- a/chrome/plugin/plugin_thread.cc
+++ b/chrome/plugin/plugin_thread.cc
@@ -127,6 +127,9 @@ void PluginThread::CleanUp() {
FreeLibrary(preloaded_plugin_module_);
preloaded_plugin_module_ = NULL;
}
+ // Need to destruct the SyncChannel to the browser before we go away because
+ // it caches a pointer to this thread.
+ channel_.reset();
PluginChannelBase::CleanupChannels();
NPAPI::PluginLib::UnloadAllPlugins();
ChromePluginLib::UnloadAllPlugins();