summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorbauerb@chromium.org <bauerb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-11 12:43:36 +0000
committerbauerb@chromium.org <bauerb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-11 12:43:36 +0000
commita4b146fa78f4676a695f93ad4f27a7d6661cbdd3 (patch)
tree2bb81cd065fa9f50632b12c0d462af5fbd89364f /chrome
parentbb7f4d3e98d48d9930502dcbf9b8eaf6f58f174d (diff)
downloadchromium_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.cc25
-rw-r--r--chrome/common/plugin_messages_internal.h2
-rw-r--r--chrome/plugin/plugin_channel.cc11
-rw-r--r--chrome/plugin/plugin_channel.h4
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_;