Project: chromium Issues People Development process History Sign in
New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Issue 327783 SDCH support may be used to track user.
Starred by 4 users Project Member Reported by mef@chromium.org, Dec 11 2013 Back to list
Status: Fixed
Owner:
Closed: Jun 2014
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: ----



Sign in to add a comment
This template is ONLY for reporting privacy issues. Please use a different
template for other types of bug reports.

Please see http://www.chromium.org/Home/chromium-privacy for further
information.


PRIVACY ISSUE
Please provide a brief summary of the privacy issue.

VERSION:
Chrome Version: [32]
Operating System: all

REPRODUCTION STEPS
This is based on http://www.blogs.zeenor.com/wp-content/uploads/2011/01/Shared_Dictionary_Compression_over_HTTP.pdf

The SDCH protocol uses unique ID (split into agent id and server id) to identify the compression dictionary.
The agent id is sent from client to server as Avail-Dictionary header:
Avail-Dictionary: GVhc3V48,TWFuIGlz

Server could send unique dictionaries to each client and use those ids to identify client requests similar to tracking cookies.

SDCH logic on the client should probably be changed to follow cookie policy and either don't get or not advertise available dictionary.


 
Comment 1 by mef@chromium.org, Dec 11 2013
I've reached out to thaidn@ and he is wondering 'why people think it doesn't have info leak like CRIME'?
Comment 2 by vabr@chromium.org, Dec 12 2013
Labels: -Privacy Cr-Privacy
Labels: Cr-Internals-Network
It does have info leak like BREACH. Servers shouldn't compress sensitive info. AFAICT, SDCH doesn't introduce new info leakage in comparison to gzip content encodings, although a higher compression ratio may make BREACH style attacks more effective.
Comment 4 by mef@chromium.org, Dec 16 2013
Good point, but given that SDCH is more or less proprietary compression, can we add random-length tail to compressed message to remediate BREACH?
Comment 5 by dxie@chromium.org, Jan 6 2014
Labels: M-34
Owner: jar@chromium.org
Status: Assigned
Comment 6 by jar@chromium.org, Jan 7 2014
Owner: mef@chromium.org
Re-assigning as a general part of the SDCH overhaul and extension. 
Comment 7 by dxie@chromium.org, Mar 3 2014
Labels: -M-34 MovedFrom-34 M-35
Moving all non essential bugs to the next Milestone.
Comment 8 by kareng@google.com, Apr 7 2014
Labels: -M-35 MovedFrom-35
This issue has already been moved once and is lower than Priority 1,therefore removing mstone.
Comment 9 by mef@chromium.org, May 29 2014
Owner: rdsmith@chromium.org
Cc: mef@chromium.org
Misha: I'm not following your suggestion in c#4.  Given that the server is in charge of putting together the dictionary, hands us the hash, and expects that hash back with which to lookup the dictionary, what's to stop the server from doing a separate identifiable dictionary per user?  

(This does make me feel more strongly that we shouldn't use SDCH in incognito mode, but that doesn't really solve this problem.)

Comment 11 by mef@chromium.org, May 29 2014
Randy, please disregard my c#4, it was wrong. I think overall we shouldn't use SDCH if user doesn't want to be tracked, e.g. if cookies are disabled.
Comment 12 by jar@chromium.org, May 31 2014
Cc: gavinp@chromium.org
There appear to be similar method to track users via the cache, wherein servers are effectively reminded of what they sent a given user.  As a result, I'm suspicious that we should not be worried about this issue.  

Gavin pointed out this cache issue when we were examining related elements of QUIC (which uses a previously supplied crypto configuration, including a public key, which *could* be made to vary from user to user :-/  )
Cc: battre@chromium.org
@jar: Could you (or Gavin) say a few more words about how the cache could be used to track users?  When I try to invent such a mechanism in my mind, what I come up with is a long-lived (in cache) redirect that goes to a URL that's per-user; is that what you were thinking?

If so, I tend to agree with you that there isn't much difference between that and SDCH.  It does suggest that mechanisms that "Keep local data only until you quit your browser" should make sure to trash both cache (which I assume it does) and SDCH (which I'll need to implement if I take any swing at the persisting of SDCH dictionaries).  

@battre: I'd love to get a privacy person's perspective on this.

The idea about using the cache to track users is that you plant some unique value on the client's computer (e.g. by sending a javascript file with content "var id = 1231234;"). Next time a user visits the same website and fetches the javascript file, it is delivered from the cache and you can re-identify the user.

I guess here the scheme would be: Send each user a custom compression dictionary. Next time the user visit the website, recognize the compression dictionary and use that to match the previous and the new session. Deliver user-specific content.

I think our goal should be:

- You cannot use this to track a user beyond the lifetime of an incognito session.
- If the user clears their cache and cookies, you cannot recognize the user based on this.

One could argue whether cookie blocking should have an effect on this. I agree that this is sufficiently similar to using the cache for tracking (which is not activated if you block cookies) that we don't need to disable it if cookies are blocked.
Implementation plan (assuming fix for issue 374914):
* SdchManagers (which have the associated dictionaries) are associated with profiles.  When the profile associated with an incognito session is destroyed, the SdchManager and associated in-memory dictionaries will also be destroyed.  
* My plan for persisting SDCH dictionaries currently involves relying on the cache and using a profile prefs setting to list dictionaries that should be pre-loaded from the cache.  I'll make sure not to persist that pref for incognito profiles (they shouldn't be anyway, but I'll confirm that).
* I'll piggyback wiping SDCH dictionaries on cache removal.

If anyone sees any problems with this, please let me know.

Issue 370567 has been merged into this issue.
Project Member Comment 17 by bugdroid1@chromium.org, Jun 17 2014
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/620c781d88323b51b747241acbcb94547027d32c

commit 620c781d88323b51b747241acbcb94547027d32c
Author: rdsmith@chromium.org <rdsmith@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Date: Tue Jun 17 01:15:30 2014

Clear SDCH information on "Clear browsing data" path.

BUG=370567
BUG= 327783 
R=jar@chromium.org

Review URL: https://codereview.chromium.org/321283002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277607 0039d316-1c4b-4281-b951-d872f2087c98


Project Member Comment 19 by bugdroid1@chromium.org, Jun 17 2014
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7221d4c83aae27833bccdcbdbccf7b1aa37d6749

commit 7221d4c83aae27833bccdcbdbccf7b1aa37d6749
Author: sorin@chromium.org <sorin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Date: Tue Jun 17 02:23:54 2014

Revert of Clear SDCH information on "Clear browsing data" path. (https://codereview.chromium.org/321283002/)

Reason for revert:
Fails ASAN tests:

(view as text)
SdchManagerTest.ClearDictionaryData (run #1):
[ RUN      ] SdchManagerTest.ClearDictionaryData
[       OK ] SdchManagerTest.ClearDictionaryData (0 ms)
[----------] 1 test from SdchManagerTest (0 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (2 ms total)
[  PASSED  ] 1 test.

  YOU HAVE 107 DISABLED TESTS


=================================================================
==16633==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 192 byte(s) in 1 object(s) allocated from:
    #0 0x51301b in operator new(unsigned long) /usr/local/google/work/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:55
    #1 0x34c6174 in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:469
    #2 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #3 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #4 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #5 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #6 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #7 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #8 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #9 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
<truncated, full output is in gzipped JSON output at end of step>
    #5 0x7eff91b98391 in std::string::append(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:290
    #6 0x7eff91b97aeb in std::string::resize(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:647
    #7 0x31f1b12 in resize /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/basic_string.h:749
    #8 0x31f1b12 in base::Base64Encode(base::BasicStringPiece\u003Cstd::string> const&, std::string*) base/base64.cc:13
    #9 0x34c73d5 in net::SdchManager::UrlSafeBase64Encode(std::string const&, std::string*) net/base/sdch_manager.cc:558
    #10 0x34c67e7 in net::SdchManager::GenerateHash(std::string const&, std::string*, std::string*) net/base/sdch_manager.cc:524
    #11 0x34c519b in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:380
    #12 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #13 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #14 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #15 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #16 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #17 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #18 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #19 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
    #20 0x3fc8ddc in RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2231
    #21 0x3fc8ddc in base::TestSuite::Run() base/test/test_suite.cc:227
    #22 0x3fbd5a2 in Run base/callback.h:401
    #23 0x3fbd5a2 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::Callback\u003Cint ()> const&, int, bool, base::Callback\u003Cvoid ()> const&) base/test/launcher/unit_test_launcher.cc:498
    #24 0x3fbcf1d in base::LaunchUnitTests(int, char**, base::Callback\u003Cint ()> const&) base/test/launcher/unit_test_launcher.cc:553
    #25 0x2ae277c in main net/test/run_all_unittests.cc:64
    #26 0x7eff9152d76c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226

SUMMARY: AddressSanitizer: 449 byte(s) leaked in 5 allocation(s).

SdchManagerTest.ClearDictionaryData (run #2):
[ RUN      ] SdchManagerTest.ClearDictionaryData
[       OK ] SdchManagerTest.ClearDictionaryData (1 ms)
[----------] 1 test from SdchManagerTest (1 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (1 ms total)
[  PASSED  ] 1 test.

  YOU HAVE 107 DISABLED TESTS


=================================================================
==3818==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 192 byte(s) in 1 object(s) allocated from:
    #0 0x51301b in operator new(unsigned long) /usr/local/google/work/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:55
    #1 0x34c6174 in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:469
    #2 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #3 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #4 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #5 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #6 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #7 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #8 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #9 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
<truncated, full output is in gzipped JSON output at end of step>
    #5 0x7ffa92ba6391 in std::string::append(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:290
    #6 0x7ffa92ba5aeb in std::string::resize(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:647
    #7 0x31f1b12 in resize /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/basic_string.h:749
    #8 0x31f1b12 in base::Base64Encode(base::BasicStringPiece\u003Cstd::string> const&, std::string*) base/base64.cc:13
    #9 0x34c73d5 in net::SdchManager::UrlSafeBase64Encode(std::string const&, std::string*) net/base/sdch_manager.cc:558
    #10 0x34c67e7 in net::SdchManager::GenerateHash(std::string const&, std::string*, std::string*) net/base/sdch_manager.cc:524
    #11 0x34c519b in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:380
    #12 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #13 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #14 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #15 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #16 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #17 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #18 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #19 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
    #20 0x3fc8ddc in RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2231
    #21 0x3fc8ddc in base::TestSuite::Run() base/test/test_suite.cc:227
    #22 0x3fbd5a2 in Run base/callback.h:401
    #23 0x3fbd5a2 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::Callback\u003Cint ()> const&, int, bool, base::Callback\u003Cvoid ()> const&) base/test/launcher/unit_test_launcher.cc:498
    #24 0x3fbcf1d in base::LaunchUnitTests(int, char**, base::Callback\u003Cint ()> const&) base/test/launcher/unit_test_launcher.cc:553
    #25 0x2ae277c in main net/test/run_all_unittests.cc:64
    #26 0x7ffa9253b76c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226

SUMMARY: AddressSanitizer: 449 byte(s) leaked in 5 allocation(s).

SdchManagerTest.ClearDictionaryData (run #3):
[ RUN      ] SdchManagerTest.ClearDictionaryData
[       OK ] SdchManagerTest.ClearDictionaryData (0 ms)
[----------] 1 test from SdchManagerTest (1 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (1 ms total)
[  PASSED  ] 1 test.

  YOU HAVE 107 DISABLED TESTS


=================================================================
==3824==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 192 byte(s) in 1 object(s) allocated from:
    #0 0x51301b in operator new(unsigned long) /usr/local/google/work/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:55
    #1 0x34c6174 in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:469
    #2 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #3 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #4 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #5 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #6 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #7 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #8 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #9 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
<truncated, full output is in gzipped JSON output at end of step>
    #5 0x7f8ff892e391 in std::string::append(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:290
    #6 0x7f8ff892daeb in std::string::resize(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:647
    #7 0x31f1b12 in resize /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/basic_string.h:749
    #8 0x31f1b12 in base::Base64Encode(base::BasicStringPiece\u003Cstd::string> const&, std::string*) base/base64.cc:13
    #9 0x34c73d5 in net::SdchManager::UrlSafeBase64Encode(std::string const&, std::string*) net/base/sdch_manager.cc:558
    #10 0x34c67e7 in net::SdchManager::GenerateHash(std::string const&, std::string*, std::string*) net/base/sdch_manager.cc:524
    #11 0x34c519b in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:380
    #12 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #13 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #14 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #15 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #16 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #17 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #18 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #19 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
    #20 0x3fc8ddc in RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2231
    #21 0x3fc8ddc in base::TestSuite::Run() base/test/test_suite.cc:227
    #22 0x3fbd5a2 in Run base/callback.h:401
    #23 0x3fbd5a2 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::Callback\u003Cint ()> const&, int, bool, base::Callback\u003Cvoid ()> const&) base/test/launcher/unit_test_launcher.cc:498
    #24 0x3fbcf1d in base::LaunchUnitTests(int, char**, base::Callback\u003Cint ()> const&) base/test/launcher/unit_test_launcher.cc:553
    #25 0x2ae277c in main net/test/run_all_unittests.cc:64
    #26 0x7f8ff82c376c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226

SUMMARY: AddressSanitizer: 449 byte(s) leaked in 5 allocation(s).

SdchManagerTest.ClearDictionaryData (run #4):
[ RUN      ] SdchManagerTest.ClearDictionaryData
[       OK ] SdchManagerTest.ClearDictionaryData (1 ms)
[----------] 1 test from SdchManagerTest (1 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (1 ms total)
[  PASSED  ] 1 test.

  YOU HAVE 107 DISABLED TESTS


=================================================================
==3827==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 192 byte(s) in 1 object(s) allocated from:
    #0 0x51301b in operator new(unsigned long) /usr/local/google/work/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:55
    #1 0x34c6174 in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:469
    #2 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #3 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #4 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #5 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #6 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #7 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #8 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #9 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
<truncated, full output is in gzipped JSON output at end of step>
    #5 0x7ff270a3c391 in std::string::append(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:290
    #6 0x7ff270a3baeb in std::string::resize(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:647
    #7 0x31f1b12 in resize /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/basic_string.h:749
    #8 0x31f1b12 in base::Base64Encode(base::BasicStringPiece\u003Cstd::string> const&, std::string*) base/base64.cc:13
    #9 0x34c73d5 in net::SdchManager::UrlSafeBase64Encode(std::string const&, std::string*) net/base/sdch_manager.cc:558
    #10 0x34c67e7 in net::SdchManager::GenerateHash(std::string const&, std::string*, std::string*) net/base/sdch_manager.cc:524
    #11 0x34c519b in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:380
    #12 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #13 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #14 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #15 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #16 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #17 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #18 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #19 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
    #20 0x3fc8ddc in RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2231
    #21 0x3fc8ddc in base::TestSuite::Run() base/test/test_suite.cc:227
    #22 0x3fbd5a2 in Run base/callback.h:401
    #23 0x3fbd5a2 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::Callback\u003Cint ()> const&, int, bool, base::Callback\u003Cvoid ()> const&) base/test/launcher/unit_test_launcher.cc:498
    #24 0x3fbcf1d in base::LaunchUnitTests(int, char**, base::Callback\u003Cint ()> const&) base/test/launcher/unit_test_launcher.cc:553
    #25 0x2ae277c in main net/test/run_all_unittests.cc:64
    #26 0x7ff2703d176c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226

SUMMARY: AddressSanitizer: 449 byte(s) leaked in 5 allocation(s).

Original issue's description:
> 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

TBR=jar@chromium.org,sky@chromium.org,rdsmith@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=370567

Review URL: https://codereview.chromium.org/339763003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277624 0039d316-1c4b-4281-b951-d872f2087c98


Project Member Comment 20 by bugdroid1@chromium.org, Jun 17 2014
------------------------------------------------------------------
r277624 | sorin@chromium.org | 2014-06-17T02:23:54.466281Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/net/base/sdch_manager.cc?r1=277624&r2=277623&pathrev=277624
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/net/sdch_dictionary_fetcher.cc?r1=277624&r2=277623&pathrev=277624
   M http://src.chromium.org/viewvc/chrome/trunk/src/net/base/sdch_manager.h?r1=277624&r2=277623&pathrev=277624
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/net/sdch_dictionary_fetcher.h?r1=277624&r2=277623&pathrev=277624
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browsing_data/browsing_data_remover.cc?r1=277624&r2=277623&pathrev=277624
   M http://src.chromium.org/viewvc/chrome/trunk/src/net/base/sdch_manager_unittest.cc?r1=277624&r2=277623&pathrev=277624

Revert of Clear SDCH information on "Clear browsing data" path. (https://codereview.chromium.org/321283002/)

Reason for revert:
Fails ASAN tests:

(view as text)
SdchManagerTest.ClearDictionaryData (run #1):
[ RUN      ] SdchManagerTest.ClearDictionaryData
[       OK ] SdchManagerTest.ClearDictionaryData (0 ms)
[----------] 1 test from SdchManagerTest (0 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (2 ms total)
[  PASSED  ] 1 test.

  YOU HAVE 107 DISABLED TESTS


=================================================================
==16633==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 192 byte(s) in 1 object(s) allocated from:
    #0 0x51301b in operator new(unsigned long) /usr/local/google/work/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:55
    #1 0x34c6174 in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:469
    #2 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #3 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #4 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #5 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #6 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #7 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #8 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #9 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
<truncated, full output is in gzipped JSON output at end of step>
    #5 0x7eff91b98391 in std::string::append(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:290
    #6 0x7eff91b97aeb in std::string::resize(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:647
    #7 0x31f1b12 in resize /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/basic_string.h:749
    #8 0x31f1b12 in base::Base64Encode(base::BasicStringPiece\u003Cstd::string> const&, std::string*) base/base64.cc:13
    #9 0x34c73d5 in net::SdchManager::UrlSafeBase64Encode(std::string const&, std::string*) net/base/sdch_manager.cc:558
    #10 0x34c67e7 in net::SdchManager::GenerateHash(std::string const&, std::string*, std::string*) net/base/sdch_manager.cc:524
    #11 0x34c519b in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:380
    #12 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #13 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #14 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #15 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #16 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #17 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #18 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #19 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
    #20 0x3fc8ddc in RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2231
    #21 0x3fc8ddc in base::TestSuite::Run() base/test/test_suite.cc:227
    #22 0x3fbd5a2 in Run base/callback.h:401
    #23 0x3fbd5a2 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::Callback\u003Cint ()> const&, int, bool, base::Callback\u003Cvoid ()> const&) base/test/launcher/unit_test_launcher.cc:498
    #24 0x3fbcf1d in base::LaunchUnitTests(int, char**, base::Callback\u003Cint ()> const&) base/test/launcher/unit_test_launcher.cc:553
    #25 0x2ae277c in main net/test/run_all_unittests.cc:64
    #26 0x7eff9152d76c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226

SUMMARY: AddressSanitizer: 449 byte(s) leaked in 5 allocation(s).

SdchManagerTest.ClearDictionaryData (run #2):
[ RUN      ] SdchManagerTest.ClearDictionaryData
[       OK ] SdchManagerTest.ClearDictionaryData (1 ms)
[----------] 1 test from SdchManagerTest (1 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (1 ms total)
[  PASSED  ] 1 test.

  YOU HAVE 107 DISABLED TESTS


=================================================================
==3818==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 192 byte(s) in 1 object(s) allocated from:
    #0 0x51301b in operator new(unsigned long) /usr/local/google/work/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:55
    #1 0x34c6174 in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:469
    #2 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #3 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #4 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #5 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #6 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #7 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #8 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #9 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
<truncated, full output is in gzipped JSON output at end of step>
    #5 0x7ffa92ba6391 in std::string::append(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:290
    #6 0x7ffa92ba5aeb in std::string::resize(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:647
    #7 0x31f1b12 in resize /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/basic_string.h:749
    #8 0x31f1b12 in base::Base64Encode(base::BasicStringPiece\u003Cstd::string> const&, std::string*) base/base64.cc:13
    #9 0x34c73d5 in net::SdchManager::UrlSafeBase64Encode(std::string const&, std::string*) net/base/sdch_manager.cc:558
    #10 0x34c67e7 in net::SdchManager::GenerateHash(std::string const&, std::string*, std::string*) net/base/sdch_manager.cc:524
    #11 0x34c519b in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:380
    #12 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #13 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #14 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #15 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #16 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #17 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #18 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #19 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
    #20 0x3fc8ddc in RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2231
    #21 0x3fc8ddc in base::TestSuite::Run() base/test/test_suite.cc:227
    #22 0x3fbd5a2 in Run base/callback.h:401
    #23 0x3fbd5a2 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::Callback\u003Cint ()> const&, int, bool, base::Callback\u003Cvoid ()> const&) base/test/launcher/unit_test_launcher.cc:498
    #24 0x3fbcf1d in base::LaunchUnitTests(int, char**, base::Callback\u003Cint ()> const&) base/test/launcher/unit_test_launcher.cc:553
    #25 0x2ae277c in main net/test/run_all_unittests.cc:64
    #26 0x7ffa9253b76c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226

SUMMARY: AddressSanitizer: 449 byte(s) leaked in 5 allocation(s).

SdchManagerTest.ClearDictionaryData (run #3):
[ RUN      ] SdchManagerTest.ClearDictionaryData
[       OK ] SdchManagerTest.ClearDictionaryData (0 ms)
[----------] 1 test from SdchManagerTest (1 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (1 ms total)
[  PASSED  ] 1 test.

  YOU HAVE 107 DISABLED TESTS


=================================================================
==3824==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 192 byte(s) in 1 object(s) allocated from:
    #0 0x51301b in operator new(unsigned long) /usr/local/google/work/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:55
    #1 0x34c6174 in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:469
    #2 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #3 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #4 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #5 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #6 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #7 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #8 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #9 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
<truncated, full output is in gzipped JSON output at end of step>
    #5 0x7f8ff892e391 in std::string::append(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:290
    #6 0x7f8ff892daeb in std::string::resize(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:647
    #7 0x31f1b12 in resize /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/basic_string.h:749
    #8 0x31f1b12 in base::Base64Encode(base::BasicStringPiece\u003Cstd::string> const&, std::string*) base/base64.cc:13
    #9 0x34c73d5 in net::SdchManager::UrlSafeBase64Encode(std::string const&, std::string*) net/base/sdch_manager.cc:558
    #10 0x34c67e7 in net::SdchManager::GenerateHash(std::string const&, std::string*, std::string*) net/base/sdch_manager.cc:524
    #11 0x34c519b in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:380
    #12 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #13 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #14 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #15 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #16 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #17 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #18 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #19 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
    #20 0x3fc8ddc in RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2231
    #21 0x3fc8ddc in base::TestSuite::Run() base/test/test_suite.cc:227
    #22 0x3fbd5a2 in Run base/callback.h:401
    #23 0x3fbd5a2 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::Callback\u003Cint ()> const&, int, bool, base::Callback\u003Cvoid ()> const&) base/test/launcher/unit_test_launcher.cc:498
    #24 0x3fbcf1d in base::LaunchUnitTests(int, char**, base::Callback\u003Cint ()> const&) base/test/launcher/unit_test_launcher.cc:553
    #25 0x2ae277c in main net/test/run_all_unittests.cc:64
    #26 0x7f8ff82c376c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226

SUMMARY: AddressSanitizer: 449 byte(s) leaked in 5 allocation(s).

SdchManagerTest.ClearDictionaryData (run #4):
[ RUN      ] SdchManagerTest.ClearDictionaryData
[       OK ] SdchManagerTest.ClearDictionaryData (1 ms)
[----------] 1 test from SdchManagerTest (1 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (1 ms total)
[  PASSED  ] 1 test.

  YOU HAVE 107 DISABLED TESTS


=================================================================
==3827==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 192 byte(s) in 1 object(s) allocated from:
    #0 0x51301b in operator new(unsigned long) /usr/local/google/work/chromium/src/third_party/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:55
    #1 0x34c6174 in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:469
    #2 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #3 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #4 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #5 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #6 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #7 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #8 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #9 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
<truncated, full output is in gzipped JSON output at end of step>
    #5 0x7ff270a3c391 in std::string::append(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:290
    #6 0x7ff270a3baeb in std::string::resize(unsigned long, char) /build/buildd/gcc-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/include/bits/basic_string.tcc:647
    #7 0x31f1b12 in resize /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/basic_string.h:749
    #8 0x31f1b12 in base::Base64Encode(base::BasicStringPiece\u003Cstd::string> const&, std::string*) base/base64.cc:13
    #9 0x34c73d5 in net::SdchManager::UrlSafeBase64Encode(std::string const&, std::string*) net/base/sdch_manager.cc:558
    #10 0x34c67e7 in net::SdchManager::GenerateHash(std::string const&, std::string*, std::string*) net/base/sdch_manager.cc:524
    #11 0x34c519b in net::SdchManager::AddSdchDictionary(std::string const&, GURL const&) net/base/sdch_manager.cc:380
    #12 0x808536 in net::SdchManagerTest_ClearDictionaryData_Test::TestBody() net/base/sdch_manager_unittest.cc:454
    #13 0x33173a8 in HandleExceptionsInMethodIfSupported\u003Ctesting::Test, void> testing/gtest/src/gtest.cc:2045
    #14 0x33173a8 in testing::Test::Run() testing/gtest/src/gtest.cc:2061
    #15 0x3319b89 in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2237
    #16 0x331a916 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2344
    #17 0x332da2a in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4065
    #18 0x332d060 in HandleExceptionsInMethodIfSupported\u003Ctesting::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2045
    #19 0x332d060 in testing::UnitTest::Run() testing/gtest/src/gtest.cc:3697
    #20 0x3fc8ddc in RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2231
    #21 0x3fc8ddc in base::TestSuite::Run() base/test/test_suite.cc:227
    #22 0x3fbd5a2 in Run base/callback.h:401
    #23 0x3fbd5a2 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::Callback\u003Cint ()> const&, int, bool, base::Callback\u003Cvoid ()> const&) base/test/launcher/unit_test_launcher.cc:498
    #24 0x3fbcf1d in base::LaunchUnitTests(int, char**, base::Callback\u003Cint ()> const&) base/test/launcher/unit_test_launcher.cc:553
    #25 0x2ae277c in main net/test/run_all_unittests.cc:64
    #26 0x7ff2703d176c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226

SUMMARY: AddressSanitizer: 449 byte(s) leaked in 5 allocation(s).

Original issue's description:
> 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

TBR=jar@chromium.org,sky@chromium.org,rdsmith@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=370567

Review URL: https://codereview.chromium.org/339763003
-----------------------------------------------------------------
Project Member Comment 21 by bugdroid1@chromium.org, Jun 19 2014
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3de57179ab3abdba3d17ee923c1664019db236b0

commit 3de57179ab3abdba3d17ee923c1664019db236b0
Author: rdsmith@chromium.org <rdsmith@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Date: Thu Jun 19 07:43:50 2014

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


Status: Fixed
I've finished the per-profile and browser data removal portions of these (see also issue 374914 and issue 370567), and made notes about not persisting prefs in issue 374915 for when I implement it.  So I'm going to close this issue.
Sign in to add a comment