summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browsing_data
diff options
context:
space:
mode:
authorrdsmith@chromium.org <rdsmith@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-19 07:43:50 +0000
committerrdsmith@chromium.org <rdsmith@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-19 07:43:50 +0000
commit3de57179ab3abdba3d17ee923c1664019db236b0 (patch)
tree62317d3e77f7c49ce0bdc7ca4d8b57255e5cf6e5 /chrome/browser/browsing_data
parent2407bd2c16a7e7046a060468a45134b7fcabbda2 (diff)
downloadchromium_src-3de57179ab3abdba3d17ee923c1664019db236b0.zip
chromium_src-3de57179ab3abdba3d17ee923c1664019db236b0.tar.gz
chromium_src-3de57179ab3abdba3d17ee923c1664019db236b0.tar.bz2
Clear SDCH information on "Clear browsing data" path.
BUG=370567 BUG=327783 R=jar@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=277607 Review URL: https://codereview.chromium.org/321283002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@278297 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browsing_data')
-rw-r--r--chrome/browser/browsing_data/browsing_data_remover.cc11
1 files changed, 11 insertions, 0 deletions
diff --git a/chrome/browser/browsing_data/browsing_data_remover.cc b/chrome/browser/browsing_data/browsing_data_remover.cc
index ba48751..29bf329 100644
--- a/chrome/browser/browsing_data/browsing_data_remover.cc
+++ b/chrome/browser/browsing_data/browsing_data_remover.cc
@@ -75,6 +75,7 @@
#include "content/public/browser/storage_partition.h"
#include "content/public/browser/user_metrics.h"
#include "net/base/net_errors.h"
+#include "net/base/sdch_manager.h"
#include "net/cookies/cookie_store.h"
#include "net/disk_cache/disk_cache.h"
#include "net/http/http_cache.h"
@@ -929,6 +930,16 @@ void BrowsingDataRemover::DoClearCache(int rv) {
// Clear QUIC server information from memory and the disk cache.
http_cache->GetSession()->quic_stream_factory()->
ClearCachedStatesInCryptoConfig();
+
+ // Clear SDCH dictionary state.
+ net::SdchManager* sdch_manager =
+ getter->GetURLRequestContext()->sdch_manager();
+ // The test is probably overkill, since chrome should always have an
+ // SdchManager. But in general the URLRequestContext is *not*
+ // guaranteed to have an SdchManager, so checking is wise.
+ if (sdch_manager)
+ sdch_manager->ClearData();
+
rv = http_cache->GetBackend(
&cache_, base::Bind(&BrowsingDataRemover::DoClearCache,
base::Unretained(this)));