diff options
author | dhollowa@chromium.org <dhollowa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-09 01:26:13 +0000 |
---|---|---|
committer | dhollowa@chromium.org <dhollowa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-09 01:26:13 +0000 |
commit | 414c3548c4f3e023a88226c6d113b77a07391671 (patch) | |
tree | 34510711f23dbfff498533d415fbaa3b648e8ca9 /tools | |
parent | 4412ea3d167c68caef380348a54bb785ab38b933 (diff) | |
download | chromium_src-414c3548c4f3e023a88226c6d113b77a07391671.zip chromium_src-414c3548c4f3e023a88226c6d113b77a07391671.tar.gz chromium_src-414c3548c4f3e023a88226c6d113b77a07391671.tar.bz2 |
Use-after-free in PersonalDataManager destructor on Mac OS
Fixes issue in unit tests where the |personal_data_| references a |profile_| that is destroyed before the |personal_data_| is done with it. The |personal_data_| member performs actions in its destructor that uses the deleted |profile_|. The change here is to force the proper order of destruction by killing |personal_data_| prior to killing |profile_|. Also, the specific test PersonalDataManagerTest.AggregateProfileWithInsufficientAddress has been extended to properly wait and verify the loading of the web data before terminating.
BUG=72170
TEST=PersonalDataManagerTest.AggregateProfileWithInsufficientAddress
Review URL: http://codereview.chromium.org/6462005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74219 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools')
-rw-r--r-- | tools/valgrind/memcheck/suppressions.txt | 74 |
1 files changed, 4 insertions, 70 deletions
diff --git a/tools/valgrind/memcheck/suppressions.txt b/tools/valgrind/memcheck/suppressions.txt index 87d0c91..efd5042 100644 --- a/tools/valgrind/memcheck/suppressions.txt +++ b/tools/valgrind/memcheck/suppressions.txt @@ -3745,76 +3745,10 @@ fun:_ZN7testing8TestInfo3RunEv } { - bug_72170a - Memcheck:Addr4 - fun:pthread_mutex_lock - fun:_ZN4base8internal8LockImpl4LockEv - fun:_ZN4base4Lock7AcquireEv - fun:_ZN4base8AutoLockC2ERNS_4LockE - fun:_ZN4base8AutoLockC1ERNS_4LockE - fun:_ZN14WebDataService13CancelRequestEi - fun:_ZN19PersonalDataManager18CancelPendingQueryEPi - fun:_ZN19PersonalDataManagerD0Ev - fun:_ZN4base20RefCountedThreadSafeI19PersonalDataManagerNS_33DefaultRefCountedThreadSafeTraitsIS1_EEE14DeleteInternalEPKS1_ - fun:_ZN4base33DefaultRefCountedThreadSafeTraitsI19PersonalDataManagerE8DestructEPKS1_ - fun:_ZNK4base20RefCountedThreadSafeI19PersonalDataManagerNS_33DefaultRefCountedThreadSafeTraitsIS1_EEE7ReleaseEv - fun:_ZN13scoped_refptrI19PersonalDataManagerED2Ev - fun:_ZN13scoped_refptrI19PersonalDataManagerED1Ev - fun:_ZN23PersonalDataManagerTestD2Ev - fun:_ZN68PersonalDataManagerTest_AggregateProfileWithInsufficientAddress_TestD0Ev - fun:_ZN7testing4Test11DeleteSelf_Ev - fun:_ZN7testingL35HandleExceptionsInMethodIfSupportedINS_4TestEvEET0_PT_MS3_FS2_vEPKc - fun:_ZN7testing8TestInfo3RunEv - fun:_ZN7testing8TestCase3RunEv - fun:_ZN7testing8internal12UnitTestImpl11RunAllTestsEv - fun:_ZN7testingL35HandleExceptionsInMethodIfSupportedINS_8internal12UnitTestImplEbEET0_PT_MS4_FS3_vEPKc - fun:_ZN7testing8UnitTest3RunEv -} -{ - bug_72170b - Memcheck:Addr4 - fun:_ZNK13scoped_refptrI14WebDataServiceE3getEv - fun:_ZN14TestingProfile17GetWebDataServiceEN7Profile17ServiceAccessTypeE - fun:_ZN19PersonalDataManager18CancelPendingQueryEPi - fun:_ZN19PersonalDataManagerD0Ev - fun:_ZN4base20RefCountedThreadSafeI19PersonalDataManagerNS_33DefaultRefCountedThreadSafeTraitsIS1_EEE14DeleteInternalEPKS1_ - fun:_ZN4base33DefaultRefCountedThreadSafeTraitsI19PersonalDataManagerE8DestructEPKS1_ - fun:_ZNK4base20RefCountedThreadSafeI19PersonalDataManagerNS_33DefaultRefCountedThreadSafeTraitsIS1_EEE7ReleaseEv - fun:_ZN13scoped_refptrI19PersonalDataManagerED2Ev - fun:_ZN13scoped_refptrI19PersonalDataManagerED1Ev - fun:_ZN23PersonalDataManagerTestD2Ev - fun:_ZN68PersonalDataManagerTest_AggregateProfileWithInsufficientAddress_TestD0Ev - fun:_ZN7testing4Test11DeleteSelf_Ev - fun:_ZN7testingL35HandleExceptionsInMethodIfSupportedINS_4TestEvEET0_PT_MS3_FS2_vEPKc - fun:_ZN7testing8TestInfo3RunEv - fun:_ZN7testing8TestCase3RunEv - fun:_ZN7testing8internal12UnitTestImpl11RunAllTestsEv - fun:_ZN7testingL35HandleExceptionsInMethodIfSupportedINS_8internal12UnitTestImplEbEET0_PT_MS4_FS3_vEPKc - fun:_ZN7testing8UnitTest3RunEv - fun:_ZN4base9TestSuite3RunEv - fun:main -} -{ - bug_72170c - Memcheck:Addr4 - fun:_ZN19PersonalDataManager18CancelPendingQueryEPi - fun:_ZN19PersonalDataManagerD0Ev - fun:_ZN4base20RefCountedThreadSafeI19PersonalDataManagerNS_33DefaultRefCountedThreadSafeTraitsIS1_EEE14DeleteInternalEPKS1_ - fun:_ZN4base33DefaultRefCountedThreadSafeTraitsI19PersonalDataManagerE8DestructEPKS1_ - fun:_ZNK4base20RefCountedThreadSafeI19PersonalDataManagerNS_33DefaultRefCountedThreadSafeTraitsIS1_EEE7ReleaseEv - fun:_ZN13scoped_refptrI19PersonalDataManagerED2Ev - fun:_ZN13scoped_refptrI19PersonalDataManagerED1Ev - fun:_ZN23PersonalDataManagerTestD2Ev - fun:_ZN68PersonalDataManagerTest_AggregateProfileWithInsufficientAddress_TestD0Ev - fun:_ZN7testing4Test11DeleteSelf_Ev - fun:_ZN7testingL35HandleExceptionsInMethodIfSupportedINS_4TestEvEET0_PT_MS3_FS2_vEPKc - fun:_ZN7testing8TestInfo3RunEv - fun:_ZN7testing8TestCase3RunEv - fun:_ZN7testing8internal12UnitTestImpl11RunAllTestsEv - fun:_ZN7testingL35HandleExceptionsInMethodIfSupportedINS_8internal12UnitTestImplEbEET0_PT_MS4_FS3_vEPKc - fun:_ZN7testing8UnitTest3RunEv - fun:_ZN4base9TestSuite3RunEv - fun:main + bug_71728 + Memcheck:Leak + fun:_Znw* + fun:*DownloadFileTest5SetUpEv } { bug_72288_a |