Add PluginDataRemover.
BUG=58235
TEST=none
Review URL: http://codereview.chromium.org/4832002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66615 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/plugin_service.cc b/chrome/browser/plugin_service.cc
index bd37a6f..e3e23fde 100644
--- a/chrome/browser/plugin_service.cc
+++ b/chrome/browser/plugin_service.cc
@@ -199,11 +199,6 @@
const FilePath& plugin_path) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- if (plugin_path.value().empty()) {
- NOTREACHED() << "should only be called if we have a plugin to load";
- return NULL;
- }
-
for (BrowserChildProcessHost::Iterator iter(ChildProcessInfo::PLUGIN_PROCESS);
!iter.Done(); ++iter) {
PluginProcessHost* plugin = static_cast<PluginProcessHost*>(*iter);
@@ -218,26 +213,25 @@
const FilePath& plugin_path) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- PluginProcessHost *plugin_host = FindPluginProcess(plugin_path);
+ PluginProcessHost* plugin_host = FindPluginProcess(plugin_path);
if (plugin_host)
return plugin_host;
WebPluginInfo info;
if (!NPAPI::PluginList::Singleton()->GetPluginInfoByPath(
- plugin_path, &info)) {
- DCHECK(false);
+ plugin_path, &info)) {
+ NOTREACHED();
return NULL;
}
// This plugin isn't loaded by any plugin process, so create a new process.
- plugin_host = new PluginProcessHost();
- if (!plugin_host->Init(info, ui_locale_)) {
- DCHECK(false); // Init is not expected to fail
- delete plugin_host;
+ scoped_ptr<PluginProcessHost> new_host(new PluginProcessHost());
+ if (!new_host->Init(info, ui_locale_)) {
+ NOTREACHED(); // Init is not expected to fail
return NULL;
}
- return plugin_host;
+ return new_host.release();
}
void PluginService::OpenChannelToPlugin(