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

Issue 2766063003: Extensions: Keep track of loaded extensions in RendererStartupHelper. (Closed)

Created:
3 years, 9 months ago by karandeepb
Modified:
3 years, 8 months ago
Reviewers:
Devlin
CC:
chromium-reviews, chromium-apps-reviews_chromium.org, extensions-reviews_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Extensions: Keep track of loaded extensions in RendererStartupHelper. This CL: - Adds tracking of currently loaded extensions and the processes they are loaded in, to RendererStartupHelper. This helps to: - Prevent sending redundant loading/unloading IPCs to renderer processes. - Prevent activating an unloaded extension. This should also help ensure that incorrect browser side logic is not causing issue 528026 and fix the crashes if it's the case. - This is also needed for a subsequent CL which enters a NOTREACHED due to unloading an unloaded extension. - Also observe content::NOTIFICATION_RENDERER_PROCESS_CLOSED to take care of cases where a RenderProcessHost is re-used for a different render process. - Changes ShellExtensionSystem::LoadApp to notify the RendererStartupHelper when an extension is loaded. - Adds multiple checks to the RendererStartupHelper to ensure consistent state. - Adds multiple tests for RendererStartupHelper. BUG=527548, 528026 Review-Url: https://codereview.chromium.org/2766063003 Cr-Commit-Position: refs/heads/master@{#462326} Committed: https://chromium.googlesource.com/chromium/src/+/53c8920dfe5c6e5798b617454b318692250e9134

Patch Set 1 : -- #

Total comments: 5

Patch Set 2 : -- #

Total comments: 18

Patch Set 3 : Address review. #

Patch Set 4 : Fix tests. #

Patch Set 5 : Also observe content::NOTIFICATION_RENDERER_PROCESS_CLOSED. #

Patch Set 6 : Fix more tests.. #

Total comments: 11

Patch Set 7 : Address review #

Unified diffs Side-by-side diffs Delta from patch set Stats (+321 lines, -7 lines) Patch
M extensions/browser/BUILD.gn View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M extensions/browser/renderer_startup_helper.h View 1 2 3 3 chunks +8 lines, -1 line 0 comments Download
M extensions/browser/renderer_startup_helper.cc View 1 2 3 4 5 6 7 chunks +62 lines, -6 lines 0 comments Download
A extensions/browser/renderer_startup_helper_unittest.cc View 1 2 3 4 5 6 1 chunk +246 lines, -0 lines 0 comments Download
M extensions/shell/browser/shell_extension_system.cc View 1 2 3 4 5 2 chunks +4 lines, -0 lines 0 comments Download

Depends on Patchset:

Dependent Patchsets:

Messages

Total messages: 55 (45 generated)
karandeepb
PTAL Devlin. This is a prerequisite for https://codereview.chromium.org/2766263003/. https://codereview.chromium.org/2766063003/diff/80001/extensions/browser/renderer_startup_helper.cc File extensions/browser/renderer_startup_helper.cc (right): https://codereview.chromium.org/2766063003/diff/80001/extensions/browser/renderer_startup_helper.cc#newcode151 extensions/browser/renderer_startup_helper.cc:151: NOTREACHED() ...
3 years, 9 months ago (2017-03-24 23:54:12 UTC) #14
Devlin
https://codereview.chromium.org/2766063003/diff/80001/extensions/browser/renderer_startup_helper.cc File extensions/browser/renderer_startup_helper.cc (right): https://codereview.chromium.org/2766063003/diff/80001/extensions/browser/renderer_startup_helper.cc#newcode151 extensions/browser/renderer_startup_helper.cc:151: NOTREACHED() << "Extension " << extension.id() On 2017/03/24 23:54:12, ...
3 years, 9 months ago (2017-03-27 14:47:58 UTC) #19
karandeepb
https://codereview.chromium.org/2766063003/diff/100001/extensions/browser/renderer_startup_helper_unittest.cc File extensions/browser/renderer_startup_helper_unittest.cc (right): https://codereview.chromium.org/2766063003/diff/100001/extensions/browser/renderer_startup_helper_unittest.cc#newcode208 extensions/browser/renderer_startup_helper_unittest.cc:208: TEST_F(RendererStartupHelperTest, UnloadBeforeLoad) { On 2017/03/27 14:47:58, Devlin wrote: > ...
3 years, 8 months ago (2017-03-27 20:54:11 UTC) #20
Devlin
https://codereview.chromium.org/2766063003/diff/100001/extensions/browser/renderer_startup_helper_unittest.cc File extensions/browser/renderer_startup_helper_unittest.cc (right): https://codereview.chromium.org/2766063003/diff/100001/extensions/browser/renderer_startup_helper_unittest.cc#newcode208 extensions/browser/renderer_startup_helper_unittest.cc:208: TEST_F(RendererStartupHelperTest, UnloadBeforeLoad) { On 2017/03/27 20:54:11, karandeepb wrote: > ...
3 years, 8 months ago (2017-03-28 23:10:08 UTC) #21
karandeepb
On 2017/03/28 23:10:08, Devlin wrote: > https://codereview.chromium.org/2766063003/diff/100001/extensions/browser/renderer_startup_helper_unittest.cc > File extensions/browser/renderer_startup_helper_unittest.cc (right): > > https://codereview.chromium.org/2766063003/diff/100001/extensions/browser/renderer_startup_helper_unittest.cc#newcode208 > ...
3 years, 8 months ago (2017-03-28 23:25:53 UTC) #22
karandeepb
PTAL Devlin. The code has changed, so you might be better off not reviewing the ...
3 years, 8 months ago (2017-04-04 00:49:42 UTC) #44
Devlin
lgtm % nits https://codereview.chromium.org/2766063003/diff/200001/extensions/browser/renderer_startup_helper.cc File extensions/browser/renderer_startup_helper.cc (right): https://codereview.chromium.org/2766063003/diff/200001/extensions/browser/renderer_startup_helper.cc#newcode54 extensions/browser/renderer_startup_helper.cc:54: case content::NOTIFICATION_RENDERER_PROCESS_CLOSED: On 2017/04/04 00:49:42, karandeepb ...
3 years, 8 months ago (2017-04-04 15:25:01 UTC) #47
karandeepb
https://codereview.chromium.org/2766063003/diff/200001/extensions/browser/renderer_startup_helper.cc File extensions/browser/renderer_startup_helper.cc (right): https://codereview.chromium.org/2766063003/diff/200001/extensions/browser/renderer_startup_helper.cc#newcode54 extensions/browser/renderer_startup_helper.cc:54: case content::NOTIFICATION_RENDERER_PROCESS_CLOSED: On 2017/04/04 15:25:00, Devlin wrote: > On ...
3 years, 8 months ago (2017-04-04 18:22:25 UTC) #48
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/2766063003/220001
3 years, 8 months ago (2017-04-06 00:54:20 UTC) #52
commit-bot: I haz the power
3 years, 8 months ago (2017-04-06 02:14:03 UTC) #55
Message was sent while issue was closed.
Committed patchset #7 (id:220001) as
https://chromium.googlesource.com/chromium/src/+/53c8920dfe5c6e5798b617454b31...

Powered by Google App Engine
This is Rietveld 408576698