-
Michael Thiessen authored
Reason for revert: Broke Linux MSan Tests. See https://ci.chromium.org/p/chromium/builders/ci/Linux%20MSan%20Tests/21213 for first failing build. Reland fixes uninitialized variable in shell/common/shell_content_client.h Original change's description: > Decouple Scheme Registration from ContentMain > > Split off of > https://chromium-review.googlesource.com/c/chromium/src/+/1901591, see > that CL (and the bug) for additional context. > > The followup to this CL locks the SchemeRegistry on first use to ensure > schemes aren't added after GURL is used (which could lead to bugs). This > means that Scheme initialization must happen before ContentMain in order > for Java to use GURL before running ContentMain (I set the ContentClient > in JNI_Onload, and register schemes after the CommandLine is initialized > in content library_loader_hooks). > > Because of that, ContentMainDelegate had to have a ContentClient > available earlier, so I added an API to ContentMainDelegate for the > embedder to create their ContentClient on-demand. > > Because I wanted to avoid registering schemes multiple times, > url_schemes.cc had to be made stateful and remember whether schemes had > already been registered (Schemes could be registered by ContentMain > after JNI_Onload already registered them for Android). > > Doc: https://docs.google.com/document/d/1kDKqBaq-b6EbUm0F4ea7ARoksUcj1KUx3qxFuSXEwM4/edit > > Bug: 783819 > Change-Id: I0f6884b2def87dcca77e722cd3d3800017c18749 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1945926 > Reviewed-by: John Abd-El-Malek <jam@chromium.org> > Reviewed-by: Albert J. Wong <ajwong@chromium.org> > Commit-Queue: Michael Thiessen <mthiesse@chromium.org> > Cr-Commit-Position: refs/heads/master@{#725799} TBR=ajwong@chromium.org,mthiesse@chromium.org,jam@chromium.org Change-Id: I27a2a49dc23610350ec9f3f96ed9824e2eeed0d5 Bug: 783819 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1973198 Commit-Queue: Michael Thiessen <mthiesse@chromium.org> Reviewed-by:
Michael Thiessen <mthiesse@chromium.org> Cr-Commit-Position: refs/heads/master@{#725981}
19be6547