Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(846)

Issue 2180253003: Ensure BrowserThread::CurrentlyOn is correct through MessageLoop teardown (Closed)

Created:
4 years, 4 months ago by Ken Rockot(use gerrit already)
Modified:
4 years, 4 months ago
Reviewers:
jam
CC:
chromium-reviews, darin-cc_chromium.org, jam
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Ensure BrowserThread::CurrentlyOn is correct through MessageLoop teardown Changes BrowserThread::CurrentlyOn (and thus BrowserThreadTaskRunner::RunsTasksOnCurrentThread()) to correctly report a BrowserThread's association during MessageLoop destruction notification. Also adds an explicit Start() to BrowserThreadImpl as there are tests which call it and which incorrectly assumed base::Thread's implementation would call BrowserThreadImpl::StartWithOptions (which it wouldn't since the latter is not a virtual function.) This change provokes many tests to delete ExtensionFunction instances that were otherwise being leaked because UIThreadExtensionFunction::Destroy was incorrectly deferring destruction when run on the UI thread during shutdown. This in turn revealed a few small bugs which have also been fixed here. BUG=631093 R=jam@chromium.org Committed: https://crrev.com/b02da29fb9116d1a1fb4fd0476628f333ff6bd1a Committed: https://crrev.com/48a6aacd388c57b77d037e21bffe64a0c8c78b39 Cr-Original-Commit-Position: refs/heads/master@{#408295} Cr-Commit-Position: refs/heads/master@{#408411}

Patch Set 1 #

Patch Set 2 : . #

Patch Set 3 : . #

Patch Set 4 : . #

Patch Set 5 : . #

Patch Set 6 : fix TestBrowserThread weirdness #

Patch Set 7 : . #

Patch Set 8 : fix a few more TestBrowserThread uses #

Patch Set 9 : fix that test for reals #

Unified diffs Side-by-side diffs Delta from patch set Stats (+113 lines, -11 lines) Patch
M chrome/browser/browser_process_impl.cc View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/policy/cloud/component_cloud_policy_browsertest.cc View 1 2 3 4 5 6 7 8 2 chunks +8 lines, -0 lines 0 comments Download
M chrome/browser/safe_browsing/incident_reporting/incident_reporting_service_unittest.cc View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/safe_browsing/protocol_manager_unittest.cc View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M content/browser/browser_thread_impl.h View 1 2 3 4 5 6 2 chunks +3 lines, -0 lines 0 comments Download
M content/browser/browser_thread_impl.cc View 1 2 3 4 5 6 5 chunks +35 lines, -6 lines 0 comments Download
M content/browser/browser_thread_unittest.cc View 5 chunks +57 lines, -1 line 0 comments Download
M extensions/browser/extension_function.cc View 1 2 3 4 1 chunk +4 lines, -2 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 61 (47 generated)
Ken Rockot(use gerrit already)
4 years, 4 months ago (2016-07-26 20:24:54 UTC) #2
jam
lgtm
4 years, 4 months ago (2016-07-26 23:46:27 UTC) #6
Ken Rockot(use gerrit already)
Taking longer than expected to land this. Apparently unit_tests on Android heavily relies on this ...
4 years, 4 months ago (2016-07-27 21:03:26 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2180253003/140001
4 years, 4 months ago (2016-07-27 23:12:28 UTC) #38
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_rel_ng/builds/251466)
4 years, 4 months ago (2016-07-27 23:38:59 UTC) #40
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2180253003/160001
4 years, 4 months ago (2016-07-27 23:59:20 UTC) #43
commit-bot: I haz the power
Try jobs failed on following builders: android_arm64_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_arm64_dbg_recipe/builds/103229)
4 years, 4 months ago (2016-07-28 00:10:56 UTC) #45
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2180253003/160001
4 years, 4 months ago (2016-07-28 00:20:45 UTC) #47
commit-bot: I haz the power
Committed patchset #8 (id:160001)
4 years, 4 months ago (2016-07-28 00:42:56 UTC) #48
commit-bot: I haz the power
Patchset 8 (id:??) landed as https://crrev.com/b02da29fb9116d1a1fb4fd0476628f333ff6bd1a Cr-Commit-Position: refs/heads/master@{#408295}
4 years, 4 months ago (2016-07-28 00:44:46 UTC) #50
Ken Rockot(use gerrit already)
A revert of this CL (patchset #8 id:160001) has been created in https://codereview.chromium.org/2186213002/ by rockot@chromium.org. ...
4 years, 4 months ago (2016-07-28 02:03:30 UTC) #51
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2180253003/180001
4 years, 4 months ago (2016-07-28 16:55:45 UTC) #58
commit-bot: I haz the power
Committed patchset #9 (id:180001)
4 years, 4 months ago (2016-07-28 17:24:09 UTC) #59
commit-bot: I haz the power
4 years, 4 months ago (2016-07-28 17:25:40 UTC) #61
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/48a6aacd388c57b77d037e21bffe64a0c8c78b39
Cr-Commit-Position: refs/heads/master@{#408411}

Powered by Google App Engine
This is Rietveld 408576698