diff options
author | tbarzic@chromium.org <tbarzic@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-30 23:14:18 +0000 |
---|---|---|
committer | tbarzic@chromium.org <tbarzic@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-30 23:14:18 +0000 |
commit | 28e76d8b38c3c96e3d87b5721d64259664e027c0 (patch) | |
tree | 828335e0b9e2da3a716d9354cd1341035304686f /tools | |
parent | f982beecb07c83521a148225b116d3bcf60596e5 (diff) | |
download | chromium_src-28e76d8b38c3c96e3d87b5721d64259664e027c0.zip chromium_src-28e76d8b38c3c96e3d87b5721d64259664e027c0.tar.gz chromium_src-28e76d8b38c3c96e3d87b5721d64259664e027c0.tar.bz2 |
Changing ThreqadWatcher to use base::Bind.
This also fixes a leak in ThreadWatcker::PostPingMessage
The leak happens when PingMessage task gets posted on the thread, but does not get executed. The task gets deleted, but callback it is containing leaks. Wrapping callback in RefCounted object should fix the leak.
BUG=chromium:89677
TEST=Ran "sh tools/valgrind/chrome_tests.sh -t ui --gtest_filter=WorkerFileSystemTest.* |& tee valgrind.out" few times locally and checked that ThreadWatcher::PostPingMessage does not leak.
unit_tests --gtest_filter=ThreadWatcherTest.*
Review URL: http://codereview.chromium.org/7885052
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103571 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools')
-rw-r--r-- | tools/valgrind/memcheck/suppressions.txt | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/tools/valgrind/memcheck/suppressions.txt b/tools/valgrind/memcheck/suppressions.txt index 0f44c77..90991ad 100644 --- a/tools/valgrind/memcheck/suppressions.txt +++ b/tools/valgrind/memcheck/suppressions.txt @@ -3868,20 +3868,6 @@ fun:_ZN3net16HttpStreamParser21DoReadHeadersCompleteEi } { - bug_89677 - Memcheck:Leak - fun:_Znw* - fun:_ZN27ScopedRunnableMethodFactoryI13ThreadWatcherE17NewRunnableMethodIMS0_FvyEyEEP14CancelableTaskT_RKT0_ - fun:_ZN13ThreadWatcher15PostPingMessageEv - fun:_Z16DispatchToMethodI13ThreadWatcherMS0_FvvEEvPT_T0_RK6Tuple0 - fun:_ZN27ScopedRunnableMethodFactoryI13ThreadWatcherE14RunnableMethodIMS0_FvvE6Tuple0E3RunEv - fun:*18TaskClosureAdapter3RunEv - fun:_ZN4base8internal8Invoker1ILb0ENS0_15InvokerStorage1*18TaskClosureAdapterEFvvEPS4_EES6_E8DoInvokeEPNS0_18InvokerStorageBaseE - fun:_ZNK4base8CallbackIFvvEE3RunEv - fun:_ZN11MessageLoop7RunTaskERKNS_11PendingTaskE - fun:_ZN11MessageLoop21DeferOrRunPendingTaskERKNS_11PendingTaskE -} -{ bug_89938 Memcheck:Cond fun:_ZN5views6Widget4ShowEv |