diff options
author | bauerb@chromium.org <bauerb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-11 12:43:36 +0000 |
---|---|---|
committer | bauerb@chromium.org <bauerb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-11 12:43:36 +0000 |
commit | a4b146fa78f4676a695f93ad4f27a7d6661cbdd3 (patch) | |
tree | 2bb81cd065fa9f50632b12c0d462af5fbd89364f /chrome | |
parent | bb7f4d3e98d48d9930502dcbf9b8eaf6f58f174d (diff) | |
download | chromium_src-a4b146fa78f4676a695f93ad4f27a7d6661cbdd3.zip chromium_src-a4b146fa78f4676a695f93ad4f27a7d6661cbdd3.tar.gz chromium_src-a4b146fa78f4676a695f93ad4f27a7d6661cbdd3.tar.bz2 |
Update our use of the NPAPI ClearSiteData API.
BUG=58235
TEST=none
Review URL: http://codereview.chromium.org/6148006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71039 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/plugin_data_remover.cc | 25 | ||||
-rw-r--r-- | chrome/common/plugin_messages_internal.h | 2 | ||||
-rw-r--r-- | chrome/plugin/plugin_channel.cc | 11 | ||||
-rw-r--r-- | chrome/plugin/plugin_channel.h | 4 |
4 files changed, 20 insertions, 22 deletions
diff --git a/chrome/browser/plugin_data_remover.cc b/chrome/browser/plugin_data_remover.cc index 2baf0d0..4e6ac7f 100644 --- a/chrome/browser/plugin_data_remover.cc +++ b/chrome/browser/plugin_data_remover.cc @@ -18,11 +18,12 @@ #endif namespace { -const char* g_flash_mime_type = "application/x-shockwave-flash"; +const char* kFlashMimeType = "application/x-shockwave-flash"; // TODO(bauerb): Update minimum required Flash version as soon as there is one // implementing the API. -const char* g_min_flash_version = "100"; -const int64 g_timeout_ms = 10000; +const char* kMinFlashVersion = "100"; +const int64 kRemovalTimeoutMs = 10000; +const uint64 kClearAllData = 0; } // namespace PluginDataRemover::PluginDataRemover() @@ -47,13 +48,13 @@ void PluginDataRemover::StartRemoving(base::Time begin_time, Task* done_task) { AddRef(); PluginService::GetInstance()->OpenChannelToPlugin( - GURL(), g_flash_mime_type, this); + GURL(), kFlashMimeType, this); BrowserThread::PostDelayedTask( BrowserThread::IO, FROM_HERE, NewRunnableMethod(this, &PluginDataRemover::OnTimeout), - g_timeout_ms); + kRemovalTimeoutMs); } int PluginDataRemover::ID() { @@ -90,7 +91,9 @@ void PluginDataRemover::ConnectToChannel(const IPC::ChannelHandle& handle) { } if (!channel_->Send( - new PluginMsg_ClearSiteData(0, std::string(), begin_time_))) { + new PluginMsg_ClearSiteData(std::string(), + kClearAllData, + begin_time_))) { LOG(DFATAL) << "Couldn't send ClearSiteData message"; SignalDone(); } @@ -147,16 +150,14 @@ bool PluginDataRemover::IsSupported() { bool allow_wildcard = false; webkit::npapi::WebPluginInfo plugin; std::string mime_type; - if (!webkit::npapi::PluginList::Singleton()->GetPluginInfo(GURL(), - g_flash_mime_type, - allow_wildcard, - &plugin, - &mime_type)) + if (!webkit::npapi::PluginList::Singleton()->GetPluginInfo( + GURL(), kFlashMimeType, allow_wildcard, &plugin, &mime_type)) { return false; + } scoped_ptr<Version> version( webkit::npapi::PluginGroup::CreateVersionFromString(plugin.version)); scoped_ptr<Version> min_version( - Version::GetVersionFromString(g_min_flash_version)); + Version::GetVersionFromString(kMinFlashVersion)); return plugin.enabled && version.get() && min_version->CompareTo(*version) == -1; diff --git a/chrome/common/plugin_messages_internal.h b/chrome/common/plugin_messages_internal.h index 54ba2eb..31eca91 100644 --- a/chrome/common/plugin_messages_internal.h +++ b/chrome/common/plugin_messages_internal.h @@ -305,8 +305,8 @@ IPC_MESSAGE_ROUTED1(PluginMsg_SetFakeAcceleratedSurfaceWindowHandle, #endif IPC_MESSAGE_CONTROL3(PluginMsg_ClearSiteData, + std::string, /* site */ uint64, /* flags */ - std::string, /* domain */ base::Time /* begin_time */) diff --git a/chrome/plugin/plugin_channel.cc b/chrome/plugin/plugin_channel.cc index 17f217d..74a2ac0 100644 --- a/chrome/plugin/plugin_channel.cc +++ b/chrome/plugin/plugin_channel.cc @@ -253,8 +253,8 @@ int PluginChannel::GenerateRouteID() { return ++last_id; } -void PluginChannel::OnClearSiteData(uint64 flags, - const std::string& domain, +void PluginChannel::OnClearSiteData(const std::string& site, + uint64 flags, base::Time begin_time) { bool success = false; CommandLine* command_line = CommandLine::ForCurrentProcess(); @@ -264,10 +264,7 @@ void PluginChannel::OnClearSiteData(uint64 flags, if (plugin_lib.get()) { NPError err = plugin_lib->NP_Initialize(); if (err == NPERR_NO_ERROR) { - scoped_refptr<webkit::npapi::PluginInstance> instance( - plugin_lib->CreateInstance(std::string())); - - const char* domain_str = domain.empty() ? NULL : domain.c_str(); + const char* site_str = site.empty() ? NULL : site.c_str(); uint64 max_age; if (begin_time > base::Time()) { base::TimeDelta delta = base::Time::Now() - begin_time; @@ -275,7 +272,7 @@ void PluginChannel::OnClearSiteData(uint64 flags, } else { max_age = kuint64max; } - err = instance->NPP_ClearSiteData(flags, domain_str, max_age); + err = plugin_lib->NP_ClearSiteData(site_str, flags, max_age); success = (err == NPERR_NO_ERROR); } } diff --git a/chrome/plugin/plugin_channel.h b/chrome/plugin/plugin_channel.h index 102d4d6..6c561f3 100644 --- a/chrome/plugin/plugin_channel.h +++ b/chrome/plugin/plugin_channel.h @@ -76,8 +76,8 @@ class PluginChannel : public PluginChannelBase { void OnCreateInstance(const std::string& mime_type, int* instance_id); void OnDestroyInstance(int instance_id, IPC::Message* reply_msg); void OnGenerateRouteID(int* route_id); - void OnClearSiteData(uint64 flags, - const std::string& domain, + void OnClearSiteData(const std::string& site, + uint64 flags, base::Time begin_time); std::vector<scoped_refptr<WebPluginDelegateStub> > plugin_stubs_; |