New issue
Advanced search Search tips

Issue 805971 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Task
Proj-Servicification



Sign in to add a comment

Eliminate ExtensionURLLoaderFactory::GetExtensionInfo.

Project Member Reported by cmumford@chromium.org, Jan 25 2018

Issue description

ExtensionURLLoaderFactory::CreateLoaderAndStart currently makes an unnecessary jump to the IO thread to run GetExtensionInfo. This is done because the tests (ExtensionProtocolsTest) uses extensions::InfoMap which should only be referenced in the IO thread. In production ChromeContentBrowserClient uses the ExtensionRegistry which can be accessed on the UI thread. It should be possible to refactor the tests to not require this thread hop.

This is best done after the switch to the network service is complete. At this time the ExtensionProtocolHandler will be deleted and the RequestHandlerType::kURLRequest tests can be deleted from extension_protocols_unittest.cc. Afterwards the tests can be refactored to not use an InfoMap, and then CreateLoaderAndStart can start using the ExtensionRegistry class (and other items) directly. If this turns out to be unfeasable then consider using the URLLoaderFactoryHelper implementation from http://crrev.com/c/834749/15.
 

Comment 1 by dxie@chromium.org, May 17 2018

this is to track clean up and not blocking canary.

Comment 2 by dxie@chromium.org, May 22 2018

Labels: Hotlist-KnownIssue

Sign in to add a comment