summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordavemoore@chromium.org <davemoore@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-28 20:24:42 +0000
committerdavemoore@chromium.org <davemoore@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-28 20:24:42 +0000
commit68f3099b071756a717e850f4d3c1cb8a0ef00c6e (patch)
tree043d67991431d9a8eb6b41c48d8b2d0825f3351e
parent4425d9e1d55b2ae7d875b068c23419526a8a9494 (diff)
downloadchromium_src-68f3099b071756a717e850f4d3c1cb8a0ef00c6e.zip
chromium_src-68f3099b071756a717e850f4d3c1cb8a0ef00c6e.tar.gz
chromium_src-68f3099b071756a717e850f4d3c1cb8a0ef00c6e.tar.bz2
Delete tab_loader when there are no more tabs to be loaded or painted
BUG=6371017 TEST=Valgrind of RunInBackgroundTest.RunInBackgroundBasicTest doesn't leak after revert of http://src.chromium.org/viewvc/chrome?view=rev&revision=72968 Review URL: http://codereview.chromium.org/6272028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73013 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/sessions/session_restore.cc3
-rw-r--r--tools/valgrind/memcheck/suppressions.txt5
2 files changed, 2 insertions, 6 deletions
diff --git a/chrome/browser/sessions/session_restore.cc b/chrome/browser/sessions/session_restore.cc
index 3689b8a..b1499ea 100644
--- a/chrome/browser/sessions/session_restore.cc
+++ b/chrome/browser/sessions/session_restore.cc
@@ -321,7 +321,8 @@ void TabLoader::Observe(NotificationType type,
NOTREACHED() << "Unknown notification received:" << type.value;
}
// Delete ourselves when we're not waiting for any more notifications.
- if (got_first_paint_&& tabs_loading_.empty() && tabs_to_load_.empty())
+ if ((got_first_paint_ || render_widget_hosts_to_paint_.empty()) &&
+ tabs_loading_.empty() && tabs_to_load_.empty())
delete this;
}
diff --git a/tools/valgrind/memcheck/suppressions.txt b/tools/valgrind/memcheck/suppressions.txt
index cece68b..2eab475 100644
--- a/tools/valgrind/memcheck/suppressions.txt
+++ b/tools/valgrind/memcheck/suppressions.txt
@@ -3684,11 +3684,6 @@
bug_71152
Memcheck:Leak
fun:_Znw*
- fun:_ZN71_GLOBAL__N_chrome_browser_sessions_session_restore.cc*
- fun:_ZN71_GLOBAL__N_chrome_browser_sessions_session_restore.cc*
- fun:_ZN71_GLOBAL__N_chrome_browser_sessions_session_restore.cc*
- fun:_Z16DispatchToMethodIN71_GLOBAL__N_chrome_browser_sessions_session_restore.cc*
- fun:_ZN12CallbackImplIN71_GLOBAL__N_chrome_browser_sessions_session_restore.cc*
fun:_ZN14SessionService20OnGotSessionCommandsEi13scoped_refptrIN18BaseSessionService26InternalGetCommandsRequestEE
fun:_Z16DispatchToMethodI14SessionServiceMS0_Fvi13scoped_refptrIN18BaseSessionService26InternalGetCommandsRequestEEEiS4_EvPT_T0_RK6Tuple2IT1_T2_E
fun:_ZN12CallbackImplI14SessionServiceMS0_Fvi13scoped_refptrIN18BaseSessionService26InternalGetCommandsRequestEEE6Tuple2IiS4_EE13RunWithParamsERKS8_