• Will Harris's avatar
    Add DCHECKs to prevent accidental use of base::Feature in chrome.exe · 196c69cf
    Will Harris authored
    There are two copies of base in a non-component Windows build, one
    inside chrome.exe and one inside chrome.dll. This will cause two
    copies of the base::FeatureList singleton to be created.
    
    However, only one of those is correctly initialized from command-line
    and server-side variations. Attempting to use a base::Feature from
    chrome.exe code (e.g. sandbox or base) will silently result in default
    behavior of the feature and never correctly respect command-line or
    variations state.
    
    This CL prevents the accidental use of the base::FeatureList in
    chrome.exe by marking it as forbidden.
    
    BUG=1154449
    
    Change-Id: I7c32037b1930e3474e52eecd44b82dcbd9dbeef5
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2568810Reviewed-by: default avatarAlexei Svitkine <asvitkine@chromium.org>
    Reviewed-by: default avatarCarlos Pizano <cpu@chromium.org>
    Commit-Queue: Carlos Pizano <cpu@chromium.org>
    Auto-Submit: Will Harris <wfh@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#837300}
    196c69cf
feature_list.h 18.7 KB