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

Issue 2475543003: Introduce the image_decoder service (Closed)

Created:
4 years, 1 month ago by Ken Rockot(use gerrit already)
Modified:
4 years, 1 month ago
CC:
Aaron Boodman, abarth-chromium, chromium-reviews, darin (slow to review), qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Introduce the image_decoder service Moves OOP image decoding from a one-off utility process IPC to its own service_manager service. This is then hooked up by Chrome to be launched by content's utility-process-based sandboxed service launcher. This serves as a precursor to extracing process launch code from content, as it defines a service which is used in production across all platforms that support multiprocess. The ImageDecoder helper defined in src/chrome is substantially simplified here, as it's reduced to a thin wrapper around the image_decoder client library. In order to support Chrome content_browser packaging the service, this also adds support for packaging services within manifest overlays by introducing a new service_manifest_overlay GN template. Finally this also introduces a new service_unittests binary as a default home for service implementations to stash their unittest sources. Follow-up work will add this test suite to bot configurations. BUG=654986 Committed: https://crrev.com/2a0f4fb3b0b4c88c4c955bf3a4860cec673dc1eb Cr-Commit-Position: refs/heads/master@{#431605}

Patch Set 1 #

Patch Set 2 : . #

Patch Set 3 : . #

Patch Set 4 : . #

Patch Set 5 : . #

Patch Set 6 : . #

Patch Set 7 : . #

Patch Set 8 : . #

Patch Set 9 : . #

Patch Set 10 : rebase #

Patch Set 11 : rebase #

Patch Set 12 : . #

Unified diffs Side-by-side diffs Delta from patch set Stats (+797 lines, -570 lines) Patch
M BUILD.gn View 1 2 3 4 5 6 7 1 chunk +1 line, -0 lines 0 comments Download
M chrome/app/BUILD.gn View 1 2 3 4 2 chunks +10 lines, -1 line 0 comments Download
M chrome/browser/BUILD.gn View 1 2 3 4 5 6 7 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/browser/DEPS View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/android/download/ui/thumbnail_provider.h View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/browser_resources.grd View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chrome_content_browser_client.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +3 lines, -0 lines 0 comments Download
M chrome/browser/chrome_content_browser_manifest_overlay.json View 1 2 1 chunk +2 lines, -1 line 0 comments Download
M chrome/browser/image_decoder.h View 1 2 3 4 5 6 7 8 5 chunks +15 lines, -63 lines 0 comments Download
M chrome/browser/image_decoder.cc View 1 2 3 4 5 6 7 8 9 10 11 6 chunks +76 lines, -176 lines 0 comments Download
M chrome/browser/search/suggestions/image_decoder_impl.cc View 1 1 chunk +1 line, -0 lines 0 comments Download
M chrome/common/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -2 lines 0 comments Download
D chrome/common/image_decoder.mojom View 1 chunk +0 lines, -18 lines 0 comments Download
M chrome/test/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -1 line 0 comments Download
M chrome/utility/BUILD.gn View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/utility/DEPS View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/utility/chrome_content_utility_client.h View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/utility/chrome_content_utility_client.cc View 1 2 4 chunks +12 lines, -5 lines 0 comments Download
D chrome/utility/image_decoder_impl.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -29 lines 0 comments Download
D chrome/utility/image_decoder_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -94 lines 0 comments Download
D chrome/utility/image_decoder_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +0 lines, -118 lines 0 comments Download
A services/BUILD.gn View 1 chunk +17 lines, -0 lines 0 comments Download
A services/OWNERS View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +3 lines, -0 lines 0 comments Download
A services/image_decoder/BUILD.gn View 1 chunk +59 lines, -0 lines 0 comments Download
A services/image_decoder/DEPS View 1 chunk +8 lines, -0 lines 0 comments Download
A services/image_decoder/README.md View 1 chunk +3 lines, -0 lines 0 comments Download
A services/image_decoder/image_decoder_impl.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +38 lines, -0 lines 0 comments Download
A + services/image_decoder/image_decoder_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 6 chunks +34 lines, -25 lines 0 comments Download
A + services/image_decoder/image_decoder_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 6 chunks +66 lines, -23 lines 0 comments Download
A services/image_decoder/image_decoder_service.h View 1 2 1 chunk +39 lines, -0 lines 0 comments Download
A services/image_decoder/image_decoder_service.cc View 1 2 1 chunk +66 lines, -0 lines 0 comments Download
A services/image_decoder/manifest.json View 1 chunk +12 lines, -0 lines 0 comments Download
A services/image_decoder/public/cpp/BUILD.gn View 1 chunk +19 lines, -0 lines 0 comments Download
A services/image_decoder/public/cpp/constants.h View 1 chunk +14 lines, -0 lines 0 comments Download
A services/image_decoder/public/cpp/constants.cc View 1 chunk +11 lines, -0 lines 0 comments Download
A services/image_decoder/public/cpp/decode.h View 1 chunk +35 lines, -0 lines 0 comments Download
A services/image_decoder/public/cpp/decode.cc View 1 1 chunk +49 lines, -0 lines 0 comments Download
A services/image_decoder/public/interfaces/BUILD.gn View 1 chunk +15 lines, -0 lines 0 comments Download
A services/image_decoder/public/interfaces/OWNERS View 1 chunk +2 lines, -0 lines 0 comments Download
A services/image_decoder/public/interfaces/image_decoder.mojom View 1 chunk +28 lines, -0 lines 0 comments Download
M services/service_manager/public/cpp/connector.h View 1 2 3 4 5 6 1 chunk +3 lines, -0 lines 0 comments Download
M services/service_manager/public/cpp/lib/connector_impl.h View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M services/service_manager/public/cpp/lib/connector_impl.cc View 1 2 3 4 5 6 1 chunk +6 lines, -0 lines 0 comments Download
M services/service_manager/public/service_manifest.gni View 1 4 chunks +126 lines, -3 lines 0 comments Download
M services/service_manager/public/tools/manifest/manifest_collator.py View 1 2 chunks +14 lines, -8 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 64 (55 generated)
Ken Rockot(use gerrit already)
4 years, 1 month ago (2016-11-08 00:48:05 UTC) #24
Ben Goodger (Google)
lgtm
4 years, 1 month ago (2016-11-10 23:13:08 UTC) #47
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/2475543003/220001
4 years, 1 month ago (2016-11-10 23:26:45 UTC) #50
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/2475543003/220001
4 years, 1 month ago (2016-11-10 23:37:51 UTC) #55
Ken Rockot(use gerrit already)
+tsepez@ for mojom. Note it's mostly just a move, but I added a max-size parameter ...
4 years, 1 month ago (2016-11-10 23:38:16 UTC) #57
Tom Sepez
mojom LGTM [the max_size as a parameter is OK since the request is always coming ...
4 years, 1 month ago (2016-11-11 17:16:27 UTC) #59
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/2475543003/220001
4 years, 1 month ago (2016-11-11 18:38:16 UTC) #61
commit-bot: I haz the power
Committed patchset #12 (id:220001)
4 years, 1 month ago (2016-11-11 18:44:47 UTC) #62
commit-bot: I haz the power
4 years, 1 month ago (2016-11-11 19:00:16 UTC) #64
Message was sent while issue was closed.
Patchset 12 (id:??) landed as
https://crrev.com/2a0f4fb3b0b4c88c4c955bf3a4860cec673dc1eb
Cr-Commit-Position: refs/heads/master@{#431605}

Powered by Google App Engine
This is Rietveld 408576698