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

Issue 2247143004: Remove app context init from LibraryLoader. (Closed)

Created:
4 years, 4 months ago by Peter Wen
Modified:
4 years, 2 months ago
CC:
anandc+watch-blimp_chromium.org, asvitkine+watch_chromium.org, cbentzel+watch_chromium.org, chromium-reviews, darin-cc_chromium.org, dtrainor+watch-blimp_chromium.org, gcasto+watch-blimp_chromium.org, jam, jbudorick+watch_chromium.org, jessicag+watch-blimp_chromium.org, jochen+watch_chromium.org, khushalsagar+watch-blimp_chromium.org, kmarshall+watch-blimp_chromium.org, lethalantidote+watch-blimp_chromium.org, lizeb+watch-custom-tabs_chromium.org, maniscalco+watch-blimp_chromium.org, marcinjb+watch-blimp_chromium.org, mikecase+watch_chromium.org, mlamouri+watch-content_chromium.org, nyquist+watch-blimp_chromium.org, Peter Beverloo, shaktisahu+watch-blimp_chromium.org, sriramsr+watch-blimp_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Remove app context init from LibraryLoader. Move towards single-initialization application context through ContextUtils#initApplicationContext in the various custom application objects where possible (BaseChromiumApplication and ContentApplication should not do this due to webview). Most tests and client code should not call ContextUtils#initApplicationContext. This fixes WebView apps that create a new wrap for their own application context every time Application#getApplicationContext is called. BUG=637389 Committed: https://crrev.com/81f0e247dd5f8002adf01bb2c4b0c668d5200fca Cr-Commit-Position: refs/heads/master@{#421906}

Patch Set 1 #

Patch Set 2 : Init in setup instead. #

Patch Set 3 : Add missing setUp calls. #

Total comments: 2

Patch Set 4 : Remove context parameter. #

Patch Set 5 : Add back runtime exception. #

Patch Set 6 : Better formatting. #

Total comments: 12

Patch Set 7 : Fix ChildProcessServiceImpl. #

Total comments: 4

Patch Set 8 : Move initialization to application layer. #

Patch Set 9 : Fix more tests. #

Patch Set 10 : Simplify native initialization controller. #

Total comments: 4

Patch Set 11 : Fix per review. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+173 lines, -188 lines) Patch
M android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java View 1 2 3 4 5 6 2 chunks +2 lines, -2 lines 0 comments Download
M android_webview/java/src/org/chromium/android_webview/AwBrowserProcess.java View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M base/android/java/src/org/chromium/base/ContextUtils.java View 1 2 3 4 1 chunk +1 line, -8 lines 0 comments Download
M base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java View 1 2 3 4 5 6 7 8 9 10 7 chunks +31 lines, -21 lines 0 comments Download
M base/android/javatests/src/org/chromium/base/EarlyTraceEventTest.java View 1 2 3 4 5 6 7 1 chunk +1 line, -3 lines 0 comments Download
M base/android/javatests/src/org/chromium/base/metrics/RecordHistogramTest.java View 1 2 3 4 5 6 7 1 chunk +1 line, -2 lines 0 comments Download
M blimp/client/app/android/java/src/org/chromium/blimp/BlimpApplication.java View 1 2 3 4 5 6 7 1 chunk +5 lines, -2 lines 0 comments Download
M blimp/client/app/android/java/src/org/chromium/blimp/BlimpLibraryLoader.java View 1 2 3 4 5 5 chunks +7 lines, -9 lines 0 comments Download
M blimp/client/app/android/java/src/org/chromium/blimp/BlimpRendererActivity.java View 1 2 3 4 5 6 7 1 chunk +1 line, -3 lines 0 comments Download
M blimp/client/app/android/javatests/src/org/chromium/blimp/BlimpNativeInstrumentationTestCase.java View 1 2 3 4 5 6 7 1 chunk +7 lines, -7 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitializationActivity.java View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -1 line 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/init/NativeInitializationController.java View 1 2 3 4 5 6 7 8 9 8 chunks +9 lines, -11 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabActivityTest.java View 1 2 3 4 5 6 7 2 chunks +5 lines, -6 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabsConnectionTest.java View 1 2 3 4 5 6 7 5 chunks +12 lines, -14 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/widget/RoundedIconGeneratorTest.java View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M chromecast/browser/android/apk/src/org/chromium/chromecast/shell/CastBrowserHelper.java View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M components/invalidation/impl/android/javatests/src/org/chromium/components/invalidation/InvalidationClientServiceTest.java View 1 2 3 4 5 6 7 14 chunks +18 lines, -18 lines 0 comments Download
M components/test/android/browsertests_apk/src/org/chromium/components_browsertests_apk/ComponentsBrowserTestsApplication.java View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -0 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java View 1 2 3 4 5 6 7 8 9 10 5 chunks +9 lines, -7 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/browser/BrowserStartupController.java View 1 2 3 4 5 6 7 2 chunks +2 lines, -2 lines 0 comments Download
M content/public/android/javatests/src/org/chromium/content/browser/ChildProcessLauncherTest.java View 1 2 3 4 5 6 7 2 chunks +6 lines, -7 lines 0 comments Download
M content/public/android/javatests/src/org/chromium/content/browser/ContentCommandLineTest.java View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M content/public/android/javatests/src/org/chromium/content/browser/ImportantFileWriterAndroidTest.java View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M content/public/android/javatests/src/org/chromium/content/browser/InterfaceRegistryTest.java View 1 2 3 4 5 6 7 2 chunks +2 lines, -3 lines 0 comments Download
M content/public/test/android/javatests/src/org/chromium/content/browser/test/NativeLibraryTestBase.java View 1 2 3 4 5 6 7 3 chunks +4 lines, -4 lines 0 comments Download
M content/shell/android/browsertests/src/org/chromium/content_shell/browsertests/ContentShellBrowserTestActivity.java View 1 2 3 4 5 2 chunks +5 lines, -34 lines 0 comments Download
M content/shell/android/browsertests_apk/src/org/chromium/content_browsertests_apk/ContentBrowserTestsApplication.java View 1 2 3 4 5 6 7 2 chunks +6 lines, -2 lines 0 comments Download
M content/shell/android/linker_test_apk/src/org/chromium/chromium_linker_test_apk/ChromiumLinkerTestActivity.java View 1 2 3 4 5 6 7 1 chunk +1 line, -2 lines 0 comments Download
M content/shell/android/linker_test_apk/src/org/chromium/chromium_linker_test_apk/ChromiumLinkerTestApplication.java View 1 2 3 4 5 6 7 2 chunks +6 lines, -2 lines 0 comments Download
M content/shell/android/shell_apk/src/org/chromium/content_shell_apk/ContentShellActivity.java View 1 2 3 4 5 6 7 1 chunk +2 lines, -2 lines 0 comments Download
M content/shell/android/shell_apk/src/org/chromium/content_shell_apk/ContentShellApplication.java View 1 2 3 4 5 6 7 2 chunks +6 lines, -0 lines 0 comments Download
M mojo/android/javatests/src/org/chromium/mojo/MojoTestCase.java View 1 2 3 4 5 2 chunks +3 lines, -4 lines 0 comments Download
M net/android/javatests/src/org/chromium/net/NetworkChangeNotifierTest.java View 1 2 3 4 5 6 7 5 chunks +6 lines, -6 lines 0 comments Download
M net/test/android/javatests/src/org/chromium/net/test/EmbeddedTestServerImpl.java View 1 2 3 4 5 6 7 8 3 chunks +6 lines, -3 lines 0 comments Download

Messages

Total messages: 67 (40 generated)
Peter Wen
This is following up on the discussion in http://crrev.com/2242173003.
4 years, 4 months ago (2016-08-16 16:48:44 UTC) #9
Torne
https://codereview.chromium.org/2247143004/diff/40001/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java File base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java (right): https://codereview.chromium.org/2247143004/diff/40001/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java#newcode135 base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java:135: public void ensureInitialized(Context context) throws ProcessInitException { Why do ...
4 years, 4 months ago (2016-08-18 14:44:55 UTC) #13
Peter Wen
https://codereview.chromium.org/2247143004/diff/40001/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java File base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java (right): https://codereview.chromium.org/2247143004/diff/40001/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java#newcode135 base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java:135: public void ensureInitialized(Context context) throws ProcessInitException { On 2016/08/18 ...
4 years, 4 months ago (2016-08-18 16:30:01 UTC) #18
Peter Wen
Friendly ping.
4 years, 4 months ago (2016-08-23 18:35:39 UTC) #21
Peter Wen
On 2016/08/23 18:35:39, Peter Wen wrote: > Friendly ping. Ping 2. :)
4 years, 3 months ago (2016-09-12 17:08:26 UTC) #22
Torne
LGTM; thanks for doing this and sorry for taking so long to review it :)
4 years, 3 months ago (2016-09-20 13:31:17 UTC) #23
Peter Wen
+slan@ for chromecast/ OWNERS. +rockot@ for mojo/ OWNERS. +agl@ for net/ OWNERS. +clamy@ for content/ ...
4 years, 3 months ago (2016-09-20 16:49:15 UTC) #29
slan
cast lgtm
4 years, 3 months ago (2016-09-20 16:51:28 UTC) #30
Ken Rockot(use gerrit already)
mojo lgtm
4 years, 3 months ago (2016-09-20 17:43:25 UTC) #31
agl
RS LGTM
4 years, 3 months ago (2016-09-20 17:55:57 UTC) #32
clamy
@tedchoc: PTAL at the code in content/. I don't feel familiar enough with the Java ...
4 years, 3 months ago (2016-09-21 15:34:39 UTC) #34
Ted C
+hanxi for the changes/questions in ChildProcessServiceImpl https://codereview.chromium.org/2247143004/diff/100001/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabActivityTest.java File chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabActivityTest.java (right): https://codereview.chromium.org/2247143004/diff/100001/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabActivityTest.java#newcode120 chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabActivityTest.java:120: ContextUtils.initApplicationContext(appContext); I'll apologize ...
4 years, 3 months ago (2016-09-21 18:36:51 UTC) #36
Xi Han
https://codereview.chromium.org/2247143004/diff/100001/content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java File content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java (left): https://codereview.chromium.org/2247143004/diff/100001/content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java#oldcode184 content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java:184: LibraryLoader.get(mLibraryProcessType).loadNow(hostBrowserContext); On 2016/09/21 18:36:51, Ted C wrote: > this ...
4 years, 3 months ago (2016-09-21 18:52:27 UTC) #37
Ted C
https://codereview.chromium.org/2247143004/diff/100001/content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java File content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java (left): https://codereview.chromium.org/2247143004/diff/100001/content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java#oldcode184 content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java:184: LibraryLoader.get(mLibraryProcessType).loadNow(hostBrowserContext); On 2016/09/21 18:52:27, Xi Han wrote: > On ...
4 years, 3 months ago (2016-09-21 19:04:19 UTC) #38
Xi Han
https://codereview.chromium.org/2247143004/diff/100001/content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java File content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java (left): https://codereview.chromium.org/2247143004/diff/100001/content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java#oldcode184 content/public/android/java/src/org/chromium/content/app/ChildProcessServiceImpl.java:184: LibraryLoader.get(mLibraryProcessType).loadNow(hostBrowserContext); On 2016/09/21 19:04:18, Ted C wrote: > On ...
4 years, 3 months ago (2016-09-21 19:37:24 UTC) #39
Torne
https://codereview.chromium.org/2247143004/diff/100001/content/public/android/java/src/org/chromium/content/browser/BrowserStartupController.java File content/public/android/java/src/org/chromium/content/browser/BrowserStartupController.java (right): https://codereview.chromium.org/2247143004/diff/100001/content/public/android/java/src/org/chromium/content/browser/BrowserStartupController.java#newcode291 content/public/android/java/src/org/chromium/content/browser/BrowserStartupController.java:291: ContextUtils.initApplicationContext(mContext.getApplicationContext()); On 2016/09/21 18:36:51, Ted C wrote: > Why ...
4 years, 2 months ago (2016-09-26 09:21:35 UTC) #40
Peter Wen
Addressed comment in ChildProcessServiceImpl. Testing changes to ChromeApplication in https://codereview.chromium.org/2363323003, can't repro some issues locally. ...
4 years, 2 months ago (2016-09-26 19:02:01 UTC) #41
Xi Han
ChildProcessServiceImpl lgtm.
4 years, 2 months ago (2016-09-26 19:05:40 UTC) #42
Ted C
On 2016/09/26 09:21:35, Torne wrote: > https://codereview.chromium.org/2247143004/diff/100001/content/public/android/java/src/org/chromium/content/browser/BrowserStartupController.java > File > content/public/android/java/src/org/chromium/content/browser/BrowserStartupController.java > (right): > > ...
4 years, 2 months ago (2016-09-26 20:41:48 UTC) #43
Ted C
https://codereview.chromium.org/2247143004/diff/120001/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java File base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java (right): https://codereview.chromium.org/2247143004/diff/120001/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java#newcode170 base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java:170: public void loadNow(Context context) throws ProcessInitException { We should ...
4 years, 2 months ago (2016-09-26 20:49:15 UTC) #44
nyquist
blimp, chrome, components/invalidation lgtm
4 years, 2 months ago (2016-09-27 01:13:13 UTC) #45
Peter Wen
@tedchoc - PTAL, removed unnecessary initialization. Still more transitive clean-up possible, but will do so ...
4 years, 2 months ago (2016-09-28 15:55:17 UTC) #57
Ted C
lgtm w/ a couple small tweaks https://codereview.chromium.org/2247143004/diff/180001/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java File base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java (right): https://codereview.chromium.org/2247143004/diff/180001/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java#newcode173 base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java:173: if (mLoaded && ...
4 years, 2 months ago (2016-09-28 17:27:46 UTC) #60
Peter Wen
Thank you for the quick and thorough review, Ted! https://codereview.chromium.org/2247143004/diff/180001/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java File base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java (right): https://codereview.chromium.org/2247143004/diff/180001/base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java#newcode173 base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java:173: ...
4 years, 2 months ago (2016-09-29 18:41:39 UTC) #61
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/2247143004/200001
4 years, 2 months ago (2016-09-29 18:48:25 UTC) #64
commit-bot: I haz the power
Committed patchset #11 (id:200001)
4 years, 2 months ago (2016-09-29 19:41:53 UTC) #65
commit-bot: I haz the power
4 years, 2 months ago (2016-09-29 19:44:11 UTC) #67
Message was sent while issue was closed.
Patchset 11 (id:??) landed as
https://crrev.com/81f0e247dd5f8002adf01bb2c4b0c668d5200fca
Cr-Commit-Position: refs/heads/master@{#421906}

Powered by Google App Engine
This is Rietveld 408576698