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

Issue 265163006: [Mac] Rebuild app shims when they fail to dyload Chrome Framework. (Closed)

Created:
6 years, 7 months ago by jackhou1
Modified:
6 years, 6 months ago
Reviewers:
tapted, Nico
CC:
chromium-reviews, chrome-apps-syd-reviews_chromium.org, tfarina
Visibility:
Public.

Description

[Mac] Rebuild app shims when they fail to dyload Chrome Framework. This also changes app_mode_loader to start Chrome with --app-shim-error only when it was started by Chrome or if it is the app_list shim. When started by the user, it launches Chrome with --app-id. This simplifies how Chrome handles --app-shim-error. It does not need to load the profile or app extension, and rebuilding the shim does not block launching the app. BUG=353047 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=278126

Patch Set 1 #

Total comments: 19

Patch Set 2 : Address comments #

Patch Set 3 : Sync and rebase #

Total comments: 6

Patch Set 4 : Address comments and fix rebase errors #

Patch Set 5 : Write code that compiles #

Total comments: 1

Patch Set 6 : Sync and rebase #

Patch Set 7 : Add test. Rebase on http://crrev.com/316493002. #

Total comments: 6

Patch Set 8 : Address comments #

Patch Set 9 : Address comments. Change to official release shim. #

Total comments: 4

Patch Set 10 : Rebase to latest http://crrev.com/316493002 #

Total comments: 2

Patch Set 11 : Rebase again and disable test on component builds. #

Patch Set 12 : Split out test. #

Patch Set 13 : Fix compile on android #

Unified diffs Side-by-side diffs Delta from patch set Stats (+213 lines, -74 lines) Patch
M chrome/app/app_mode_loader_mac.mm View 1 2 3 4 5 6 3 chunks +46 lines, -15 lines 0 comments Download
M chrome/browser/ui/app_list/app_list_service.h View 1 chunk +3 lines, -0 lines 0 comments Download
M chrome/browser/ui/app_list/app_list_service_disabled.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/ui/app_list/app_list_service_impl.h View 2 chunks +1 line, -3 lines 0 comments Download
M chrome/browser/ui/app_list/app_list_service_mac.h View 1 1 chunk +0 lines, -2 lines 0 comments Download
M chrome/browser/ui/startup/startup_browser_creator.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +9 lines, -0 lines 0 comments Download
M chrome/browser/ui/views/app_list/linux/app_list_service_linux.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/views/app_list/win/app_list_service_win.h View 1 2 3 4 5 1 chunk +0 lines, -2 lines 0 comments Download
M chrome/browser/web_applications/web_app.h View 1 2 3 4 5 6 7 8 9 10 2 chunks +10 lines, -0 lines 0 comments Download
M chrome/browser/web_applications/web_app.cc View 1 2 3 4 5 6 7 8 9 10 7 chunks +30 lines, -34 lines 0 comments Download
M chrome/browser/web_applications/web_app_mac.h View 1 2 3 4 5 2 chunks +7 lines, -0 lines 0 comments Download
M chrome/browser/web_applications/web_app_mac.mm View 1 2 3 4 5 6 7 8 9 10 5 chunks +70 lines, -4 lines 0 comments Download
M chrome/chrome.gyp View 1 2 3 4 5 6 7 8 1 chunk +4 lines, -1 line 0 comments Download
M chrome/common/mac/app_mode_chrome_locator.h View 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/common/mac/app_mode_chrome_locator.mm View 1 2 3 4 5 6 7 8 9 3 chunks +17 lines, -9 lines 0 comments Download
M chrome/common/mac/app_mode_chrome_locator_unittest.mm View 2 chunks +5 lines, -2 lines 0 comments Download
M chrome/common/mac/app_mode_common.h View 1 2 3 4 5 6 2 chunks +5 lines, -1 line 0 comments Download
M chrome/common/mac/app_mode_common.mm View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 23 (0 generated)
jackhou1
6 years, 7 months ago (2014-05-05 03:58:22 UTC) #1
tapted
https://codereview.chromium.org/265163006/diff/1/chrome/app/app_mode_loader_mac.mm File chrome/app/app_mode_loader_mac.mm (right): https://codereview.chromium.org/265163006/diff/1/chrome/app/app_mode_loader_mac.mm#newcode124 chrome/app/app_mode_loader_mac.mm:124: if (ChromeAppModeStart) { nit: doesn't need curlies https://codereview.chromium.org/265163006/diff/1/chrome/app/app_mode_loader_mac.mm#newcode137 chrome/app/app_mode_loader_mac.mm:137: ...
6 years, 7 months ago (2014-05-05 07:02:01 UTC) #2
jackhou1
https://codereview.chromium.org/265163006/diff/1/chrome/app/app_mode_loader_mac.mm File chrome/app/app_mode_loader_mac.mm (right): https://codereview.chromium.org/265163006/diff/1/chrome/app/app_mode_loader_mac.mm#newcode124 chrome/app/app_mode_loader_mac.mm:124: if (ChromeAppModeStart) { On 2014/05/05 07:02:01, tapted wrote: > ...
6 years, 7 months ago (2014-05-06 04:47:58 UTC) #3
tapted
lgtm https://codereview.chromium.org/265163006/diff/40001/chrome/app/app_mode_loader_mac.mm File chrome/app/app_mode_loader_mac.mm (right): https://codereview.chromium.org/265163006/diff/40001/chrome/app/app_mode_loader_mac.mm#newcode166 chrome/app/app_mode_loader_mac.mm:166: info.minor_version = app_mode::kCurrentChromeAppModeInfoMinorVersion; we should increment this again, ...
6 years, 7 months ago (2014-05-06 07:13:23 UTC) #4
jackhou1
https://codereview.chromium.org/265163006/diff/40001/chrome/app/app_mode_loader_mac.mm File chrome/app/app_mode_loader_mac.mm (right): https://codereview.chromium.org/265163006/diff/40001/chrome/app/app_mode_loader_mac.mm#newcode166 chrome/app/app_mode_loader_mac.mm:166: info.minor_version = app_mode::kCurrentChromeAppModeInfoMinorVersion; On 2014/05/06 07:13:24, tapted wrote: > ...
6 years, 7 months ago (2014-05-06 08:38:16 UTC) #5
jackhou1
thakis, please review for OWNERS: chrome/app/app_mode_loader_mac.mm chrome/browser/ui/startup/startup_browser_creator.cc chrome/common/mac/
6 years, 7 months ago (2014-05-06 08:40:27 UTC) #6
Nico
Is it possible to test this? How large is a 32bit app shim binary? Maybe ...
6 years, 7 months ago (2014-05-07 23:45:43 UTC) #7
jackhou1
tapted, PTAL at Patch 7 Main changes: - added 32-bit shim built with this patch, ...
6 years, 6 months ago (2014-06-11 03:01:36 UTC) #8
tapted
https://codereview.chromium.org/265163006/diff/120001/apps/app_shim/app_shim_interactive_uitest_mac.mm File apps/app_shim/app_shim_interactive_uitest_mac.mm (right): https://codereview.chromium.org/265163006/diff/120001/apps/app_shim/app_shim_interactive_uitest_mac.mm#newcode307 apps/app_shim/app_shim_interactive_uitest_mac.mm:307: base::FilePath shim_path_32 = Should this actually try to pick ...
6 years, 6 months ago (2014-06-11 03:32:44 UTC) #9
jackhou1
https://codereview.chromium.org/265163006/diff/120001/apps/app_shim/app_shim_interactive_uitest_mac.mm File apps/app_shim/app_shim_interactive_uitest_mac.mm (right): https://codereview.chromium.org/265163006/diff/120001/apps/app_shim/app_shim_interactive_uitest_mac.mm#newcode307 apps/app_shim/app_shim_interactive_uitest_mac.mm:307: base::FilePath shim_path_32 = On 2014/06/11 03:32:43, tapted wrote: > ...
6 years, 6 months ago (2014-06-13 09:47:49 UTC) #10
tapted
lgtm https://codereview.chromium.org/265163006/diff/160001/chrome/common/mac/app_mode_chrome_locator.mm File chrome/common/mac/app_mode_chrome_locator.mm (right): https://codereview.chromium.org/265163006/diff/160001/chrome/common/mac/app_mode_chrome_locator.mm#newcode64 chrome/common/mac/app_mode_chrome_locator.mm:64: // chrome::kFrameworkName looks like "$PRODUCT_STRING Framework.framework". nit: update ...
6 years, 6 months ago (2014-06-13 11:15:58 UTC) #11
jackhou1
https://codereview.chromium.org/265163006/diff/160001/chrome/common/mac/app_mode_chrome_locator.mm File chrome/common/mac/app_mode_chrome_locator.mm (right): https://codereview.chromium.org/265163006/diff/160001/chrome/common/mac/app_mode_chrome_locator.mm#newcode64 chrome/common/mac/app_mode_chrome_locator.mm:64: // chrome::kFrameworkName looks like "$PRODUCT_STRING Framework.framework". On 2014/06/13 11:15:58, ...
6 years, 6 months ago (2014-06-14 10:09:33 UTC) #12
jackhou1
thakis, PTAL On 2014/05/07 23:45:43, Nico (away) wrote: > Is it possible to test this? ...
6 years, 6 months ago (2014-06-16 21:31:23 UTC) #13
Nico
lgtm Thanks for adding a test! 800kB isn't small, but the test binary will probably ...
6 years, 6 months ago (2014-06-16 22:31:00 UTC) #14
jackhou1
https://codereview.chromium.org/265163006/diff/180001/chrome/app/app_mode_loader_mac.mm File chrome/app/app_mode_loader_mac.mm (right): https://codereview.chromium.org/265163006/diff/180001/chrome/app/app_mode_loader_mac.mm#newcode138 chrome/app/app_mode_loader_mac.mm:138: // the problem, so don't try again. On 2014/06/16 ...
6 years, 6 months ago (2014-06-16 22:46:41 UTC) #15
jackhou1
The CQ bit was checked by jackhou@chromium.org
6 years, 6 months ago (2014-06-18 08:01:40 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jackhou@chromium.org/265163006/200001
6 years, 6 months ago (2014-06-18 08:04:10 UTC) #17
jackhou1
The CQ bit was checked by jackhou@chromium.org
6 years, 6 months ago (2014-06-18 12:02:21 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jackhou@chromium.org/265163006/220001
6 years, 6 months ago (2014-06-18 12:03:15 UTC) #19
jackhou1
CQ is failing on checkperms because it can't commit executables. Pulling the test out into ...
6 years, 6 months ago (2014-06-18 12:17:49 UTC) #20
jackhou1
The CQ bit was checked by jackhou@chromium.org
6 years, 6 months ago (2014-06-18 12:51:10 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jackhou@chromium.org/265163006/240001
6 years, 6 months ago (2014-06-18 12:52:24 UTC) #22
commit-bot: I haz the power
6 years, 6 months ago (2014-06-18 18:26:41 UTC) #23
Message was sent while issue was closed.
Change committed as 278126

Powered by Google App Engine
This is Rietveld 408576698