-
noel authored
Add ExtensionUnpacker mojo, used to (unzip and) unpack a chrome extension, and expose it to the browser via the utility process policy file. Make callers use a utility process mojo client. Add [Native] IPC enum param traits via a mojo typemap to handle extensions::Manifest::Location. Set the wire limit for the enum value to one less than Manifest::NUM_LOCATIONS (for compat with the pre-existing custom traits removed in this patch since this patch auto-generates them: manifest_location_param_traits.cc). In the extensions/utility/utility_handler.cc, retain the CHECKs on the Manifest::Location enum limits while bug 692069 is still being investigated. Move DecodeImages declarations from the extension messages-file into its own file (extension_utility_types.h) to decouple those declarations from this messages-file. A follow-up patch deletes the messages-file so DecodeImages needs a new home. Update all BUILD.gn for using clients to directly depend on the //extensions/common:common target (and hence, its :mojo) to fix post-compile step failures (warning about under-specified BUILD files via "targets is_dirty" errors, see review comment #169). Add TestContentBrowserClient to the extension test harness, and also an overlay file in test/data (needed to expose the mojo in the extension test harness to the unit tests listed below). Covered by existing unit tests: {sandboxed_unpacker, zipfile_installer}_unittest.cc BUG=691410 Review-Url: https://codereview.chromium.org/2697463002 Cr-Commit-Position: refs/heads/master@{#457374}
c8702c4c