New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 786613 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Dec 2017
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 775677



Sign in to add a comment

extensions::SafeManifestParser should use SafeXmlParser.

Project Member Reported by jcivelli@chromium.org, Nov 18 2017

Issue description

Instead of having a dedicated mojom interface (extensions/common/manifest_parser.mojom) for doing the parsing of manifest, we should use the SafeXmlParser service.

That would remove one use of UtilityProcessMojoClient.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Dec 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/52054ad2f6ad8fc7257962285c80a29271864e4a

commit 52054ad2f6ad8fc7257962285c80a29271864e4a
Author: Jay Civelli <jcivelli@google.com>
Date: Fri Dec 01 02:15:42 2017

Changing SafeManifestParser to use the SafeXmlParser service.

Changing SafeManifestParser to use the SafeXmlParser service instead of
having a dedicated Mojo interface for doing the parsing of extension
manifests.
SafeXmlParser parses the XML in a sandboxed process and returns a
base::Value that can be traversed in the browser process.

As a result, the mojom, traits, typemap files have been removed.
The implementation of the parsing has been moved to
safe_manifest_parser.cc.

The update_manifest_unittest.cc was moved to
safe_manifest_parser_unittest.cc and split into several tests (no
changes to the logic).

Bug:  786613 
Change-Id: Ia586ea0e9689d45130013b6d4d992318eb9b7dc4
Reviewed-on: https://chromium-review.googlesource.com/777939
Commit-Queue: Jay Civelli <jcivelli@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Ken Rockot <rockot@chromium.org>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#520802}
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/chrome/browser/chromeos/extensions/external_cache.cc
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/chrome/browser/chromeos/extensions/external_cache.h
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/chrome/browser/chromeos/extensions/external_cache_unittest.cc
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/chrome/browser/extensions/updater/chrome_extension_downloader_factory.cc
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/chrome/browser/extensions/updater/chrome_extension_downloader_factory.h
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/chrome/browser/extensions/updater/extension_updater_unittest.cc
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/BUILD.gn
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/browser/BUILD.gn
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/browser/DEPS
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/browser/updater/BUILD.gn
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/browser/updater/extension_downloader.cc
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/browser/updater/extension_downloader.h
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/browser/updater/safe_manifest_parser.cc
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/browser/updater/safe_manifest_parser.h
[add] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/browser/updater/safe_manifest_parser_unittest.cc
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/common/BUILD.gn
[delete] https://crrev.com/1544cd09f1ba4dee2f67d91c90d73cb888ca5573/extensions/common/manifest_parser.mojom
[delete] https://crrev.com/1544cd09f1ba4dee2f67d91c90d73cb888ca5573/extensions/common/manifest_parser.typemap
[delete] https://crrev.com/1544cd09f1ba4dee2f67d91c90d73cb888ca5573/extensions/common/manifest_parser_struct_traits.cc
[delete] https://crrev.com/1544cd09f1ba4dee2f67d91c90d73cb888ca5573/extensions/common/manifest_parser_struct_traits.h
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/common/typemaps.gni
[delete] https://crrev.com/1544cd09f1ba4dee2f67d91c90d73cb888ca5573/extensions/common/update_manifest.cc
[delete] https://crrev.com/1544cd09f1ba4dee2f67d91c90d73cb888ca5573/extensions/common/update_manifest.h
[delete] https://crrev.com/1544cd09f1ba4dee2f67d91c90d73cb888ca5573/extensions/common/update_manifest_unittest.cc
[modify] https://crrev.com/52054ad2f6ad8fc7257962285c80a29271864e4a/extensions/utility/utility_handler.cc

Status: Fixed (was: Untriaged)

Sign in to add a comment