Chromium Code Reviews
DescriptionMove RegisterContentSchemes from public url_constants into non-public url_schemes.
The VC++ linker can only discard whole .obj files that aren't used. setup.exe and npchrome_frame.dll pull in constants from url_constants.cc. http://crrev.com/133107 put RegisterContentSchemes into that file. This function's use of ContentClient causes all of WebKit and V8 to be pulled into setup.exe and npchrome_frame.dll.
This change here moves RegisterContentSchemes into its own .cc file to get around link.exe's .obj-level code omission policy.
This is a hack, and I feel shame for committing it. In the long run, we need a way to prevent changes that lead to a 6x increase in the size of the binaries spat out by the official builders. One could imagine this being done by a stage in a try run that goes red, or some build-time enforcement. Perhaps the constants should even go in their own target so that consumers of nothing but constants don't accidentally get content's transient dependencies.
BUG=127564
TEST=none
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=139253
Patch Set 1 : #Patch Set 2 : take RegisterContentSchemes out of public #
Total comments: 1
Patch Set 3 : pull common test initialization out into ContentTestSuiteBase #
Total comments: 11
Patch Set 4 : no more internal #Patch Set 5 : GetSavableSchemesInternal #Patch Set 6 : checkdeps! #
Total comments: 1
Patch Set 7 : no more Internal #Patch Set 8 : export GetSavableSchemes #Patch Set 9 : sigh #
Total comments: 2
Patch Set 10 : rebase to r139235 #Patch Set 11 : GetSavableSchemesInternal again (Patch Set 5) #Patch Set 12 : allow content/common/savable_url_schemes.h to be included by url_constants.cc #
Messages
Total messages: 21 (0 generated)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||