Changeset 254389 in webkit


Ignore:
Timestamp:
Jan 10, 2020 7:05:30 PM (4 years ago)
Author:
mmaxfield@apple.com
Message:

REGRESSION(r185816): In the Hong Kong locale, navigator.language reports it's in the Taiwan locale
https://bugs.webkit.org/show_bug.cgi?id=200043
Source/WTF:

<rdar://problem/44119496>

Reviewed by Dean Jackson.

We ask the system for the current locale using CFLocaleCopyPreferredLanguages(), and then round-trip
it through CFBundleGetLocalizationInfoForLocalization() / CFBundleCopyLocalizationForLocalizationInfo().
This was to work around the fact that CFLocaleCopyPreferredLanguages() previously didn't report BCP47
language codes. However, that round-tripping was introducing errors, such as "zh-Hant-HK" was getting
turned into "zh-Hant-TW" which is clearly wrong. The CFBundle functions were never supposed to be used
in this way.

Instead, we can use CFLocaleCreateCanonicalLanguageIdentifierFromString() which is intended to
canonicalize locale identifiers, and does return BCP47 language codes. However, this function preserves
more fingerprinting entropy than the old code path, so we pass the input through new NSLocale SPI to
minimize the entropy revealed.

  • WTF.xcodeproj/project.pbxproj:
  • wtf/Language.h:
  • wtf/Platform.h:
  • wtf/PlatformMac.cmake:
  • wtf/cf/LanguageCF.cpp:

(WTF::httpStyleLanguageCode):
(WTF::platformUserPreferredLanguages):

  • wtf/cocoa/LanguageCocoa.mm: Added.

(WTF::minimizedLanguagesFromLanguages):

  • wtf/spi/cocoa/NSLocaleSPI.h: Added.

Tools:

Reviewed by Dean Jackson.

Migrate system language tests to LayoutTests, to match the rest of our system language tests.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/NavigatorLanguage.mm: Removed.

LayoutTests:

<rdar://problem/44119496>

Reviewed by Dean Jackson.

Migrate and update tests from TestWebKitAPI to LayoutTests, to match the rest of our system language tests.

  • platform/mac/TestExpectations: Mark these tests as possibly failing on older versions of macOS.
  • fast/text/international/system-language/navigator-language/navigator-language-en-GB-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-en-GB.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-en-US-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-en-US.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-en-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-en.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-es-419-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-es-419.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-es-ES-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-es-ES.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-es-MX-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-es-MX.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-es-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-es.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-fr-CA-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-fr-CA.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-fr-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-fr.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-hi-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-hi.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-ja-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-ja.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-pt-BR-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-pt-BR.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-pt-PT-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-pt-PT.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-ru-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-ru.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-zh-HK-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-zh-HK.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-zh-Hans-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-zh-Hans.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-zh-Hant-HK-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-zh-Hant-HK.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-zh-Hant-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-zh-Hant.html: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-zh-TW-expected.txt: Added.
  • fast/text/international/system-language/navigator-language/navigator-language-zh-TW.html: Added.
  • js/dom/navigator-language-expected.txt:
Location:
trunk
Files:
41 added
1 deleted
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r254386 r254389  
     12020-01-10  Myles C. Maxfield  <mmaxfield@apple.com>
     2
     3        REGRESSION(r185816): In the Hong Kong locale, navigator.language reports it's in the Taiwan locale
     4        https://bugs.webkit.org/show_bug.cgi?id=200043
     5        <rdar://problem/44119496>
     6
     7        Reviewed by Dean Jackson.
     8
     9        Migrate and update tests from TestWebKitAPI to LayoutTests, to match the rest of our system language tests.
     10
     11        * platform/mac/TestExpectations: Mark these tests as possibly failing on older versions of macOS.
     12        * fast/text/international/system-language/navigator-language/navigator-language-en-GB-expected.txt: Added.
     13        * fast/text/international/system-language/navigator-language/navigator-language-en-GB.html: Added.
     14        * fast/text/international/system-language/navigator-language/navigator-language-en-US-expected.txt: Added.
     15        * fast/text/international/system-language/navigator-language/navigator-language-en-US.html: Added.
     16        * fast/text/international/system-language/navigator-language/navigator-language-en-expected.txt: Added.
     17        * fast/text/international/system-language/navigator-language/navigator-language-en.html: Added.
     18        * fast/text/international/system-language/navigator-language/navigator-language-es-419-expected.txt: Added.
     19        * fast/text/international/system-language/navigator-language/navigator-language-es-419.html: Added.
     20        * fast/text/international/system-language/navigator-language/navigator-language-es-ES-expected.txt: Added.
     21        * fast/text/international/system-language/navigator-language/navigator-language-es-ES.html: Added.
     22        * fast/text/international/system-language/navigator-language/navigator-language-es-MX-expected.txt: Added.
     23        * fast/text/international/system-language/navigator-language/navigator-language-es-MX.html: Added.
     24        * fast/text/international/system-language/navigator-language/navigator-language-es-expected.txt: Added.
     25        * fast/text/international/system-language/navigator-language/navigator-language-es.html: Added.
     26        * fast/text/international/system-language/navigator-language/navigator-language-fr-CA-expected.txt: Added.
     27        * fast/text/international/system-language/navigator-language/navigator-language-fr-CA.html: Added.
     28        * fast/text/international/system-language/navigator-language/navigator-language-fr-expected.txt: Added.
     29        * fast/text/international/system-language/navigator-language/navigator-language-fr.html: Added.
     30        * fast/text/international/system-language/navigator-language/navigator-language-hi-expected.txt: Added.
     31        * fast/text/international/system-language/navigator-language/navigator-language-hi.html: Added.
     32        * fast/text/international/system-language/navigator-language/navigator-language-ja-expected.txt: Added.
     33        * fast/text/international/system-language/navigator-language/navigator-language-ja.html: Added.
     34        * fast/text/international/system-language/navigator-language/navigator-language-pt-BR-expected.txt: Added.
     35        * fast/text/international/system-language/navigator-language/navigator-language-pt-BR.html: Added.
     36        * fast/text/international/system-language/navigator-language/navigator-language-pt-PT-expected.txt: Added.
     37        * fast/text/international/system-language/navigator-language/navigator-language-pt-PT.html: Added.
     38        * fast/text/international/system-language/navigator-language/navigator-language-ru-expected.txt: Added.
     39        * fast/text/international/system-language/navigator-language/navigator-language-ru.html: Added.
     40        * fast/text/international/system-language/navigator-language/navigator-language-zh-HK-expected.txt: Added.
     41        * fast/text/international/system-language/navigator-language/navigator-language-zh-HK.html: Added.
     42        * fast/text/international/system-language/navigator-language/navigator-language-zh-Hans-expected.txt: Added.
     43        * fast/text/international/system-language/navigator-language/navigator-language-zh-Hans.html: Added.
     44        * fast/text/international/system-language/navigator-language/navigator-language-zh-Hant-HK-expected.txt: Added.
     45        * fast/text/international/system-language/navigator-language/navigator-language-zh-Hant-HK.html: Added.
     46        * fast/text/international/system-language/navigator-language/navigator-language-zh-Hant-expected.txt: Added.
     47        * fast/text/international/system-language/navigator-language/navigator-language-zh-Hant.html: Added.
     48        * fast/text/international/system-language/navigator-language/navigator-language-zh-TW-expected.txt: Added.
     49        * fast/text/international/system-language/navigator-language/navigator-language-zh-TW.html: Added.
     50        * js/dom/navigator-language-expected.txt:
     51
    1522020-01-10  John Wilander  <wilander@apple.com>
    253
  • trunk/LayoutTests/js/dom/navigator-language-expected.txt

    r206949 r254389  
    33
    44
    5 PASS language is 'en-US'
     5PASS
    66PASS successfullyParsed is true
    77
  • trunk/LayoutTests/js/dom/navigator-language.html

    r206949 r254389  
    1616
    1717var language = navigator.language;
    18 if (language.length == 2)
    19     shouldBe("language", "'en'");
     18if (language == "en" || language == "en-us" || language == "en-US")
     19    testPassed("");
    2020else
    21     shouldBe("language", "'en-US'");
     21    testFailed("");
    2222</script>
    2323<script src="../../resources/js-test-post.js"></script>
  • trunk/LayoutTests/platform/mac/TestExpectations

    r254279 r254389  
    19251925
    19261926webkit.org/b/197204 webexposed/css-properties-behind-flags.html [ Pass Failure ]
     1927
     1928# The navigator.language tests rely on functionality only available in recent releases of macOS Catalina and onward.
     1929webkit.org/b/200043 [ Sierra HighSierra Mojave ] fast/text/international/system-language/navigator-language [ Pass Failure ]
  • trunk/Source/WTF/ChangeLog

    r254384 r254389  
     12020-01-10  Myles C. Maxfield  <mmaxfield@apple.com>
     2
     3        REGRESSION(r185816): In the Hong Kong locale, navigator.language reports it's in the Taiwan locale
     4        https://bugs.webkit.org/show_bug.cgi?id=200043
     5        <rdar://problem/44119496>
     6
     7        Reviewed by Dean Jackson.
     8
     9        We ask the system for the current locale using CFLocaleCopyPreferredLanguages(), and then round-trip
     10        it through CFBundleGetLocalizationInfoForLocalization() / CFBundleCopyLocalizationForLocalizationInfo().
     11        This was to work around the fact that CFLocaleCopyPreferredLanguages() previously didn't report BCP47
     12        language codes. However, that round-tripping was introducing errors, such as "zh-Hant-HK" was getting
     13        turned into "zh-Hant-TW" which is clearly wrong. The CFBundle functions were never supposed to be used
     14        in this way.
     15
     16        Instead, we can use CFLocaleCreateCanonicalLanguageIdentifierFromString() which is intended to
     17        canonicalize locale identifiers, and does return BCP47 language codes. However, this function preserves
     18        more fingerprinting entropy than the old code path, so we pass the input through new NSLocale SPI to
     19        minimize the entropy revealed.
     20
     21        * WTF.xcodeproj/project.pbxproj:
     22        * wtf/Language.h:
     23        * wtf/Platform.h:
     24        * wtf/PlatformMac.cmake:
     25        * wtf/cf/LanguageCF.cpp:
     26        (WTF::httpStyleLanguageCode):
     27        (WTF::platformUserPreferredLanguages):
     28        * wtf/cocoa/LanguageCocoa.mm: Added.
     29        (WTF::minimizedLanguagesFromLanguages):
     30        * wtf/spi/cocoa/NSLocaleSPI.h: Added.
     31
    1322020-01-10  Simon Fraser  <simon.fraser@apple.com>
    233
  • trunk/Source/WTF/WTF.xcodeproj/project.pbxproj

    r254241 r254389  
    6161                1C181C931D307AB800F5FA16 /* UTextProviderUTF16.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1C181C8D1D307AB800F5FA16 /* UTextProviderUTF16.cpp */; };
    6262                1C181C961D30800A00F5FA16 /* TextBreakIteratorInternalICUCocoa.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1C181C951D30800A00F5FA16 /* TextBreakIteratorInternalICUCocoa.cpp */; };
     63                1C503BE623AAE0AE0072E66B /* LanguageCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1C503BE523AAE0AE0072E66B /* LanguageCocoa.mm */; };
    6364                1FA47C8A152502DA00568D1B /* WebCoreThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FA47C88152502DA00568D1B /* WebCoreThread.cpp */; };
    6465                2CCD892A15C0390200285083 /* GregorianDateTime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2CCD892915C0390200285083 /* GregorianDateTime.cpp */; };
     
    340341                1C181C8E1D307AB800F5FA16 /* UTextProviderUTF16.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UTextProviderUTF16.h; sourceTree = "<group>"; };
    341342                1C181C951D30800A00F5FA16 /* TextBreakIteratorInternalICUCocoa.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextBreakIteratorInternalICUCocoa.cpp; sourceTree = "<group>"; };
     343                1C503BE423AADEEA0072E66B /* NSLocaleSPI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NSLocaleSPI.h; sourceTree = "<group>"; };
     344                1C503BE523AAE0AE0072E66B /* LanguageCocoa.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = LanguageCocoa.mm; sourceTree = "<group>"; };
    342345                1CCDB1491E566626006C73C0 /* TextBreakIteratorCF.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextBreakIteratorCF.h; sourceTree = "<group>"; };
    343346                1CCDB14D1E566898006C73C0 /* TextBreakIteratorICU.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextBreakIteratorICU.h; sourceTree = "<group>"; };
     
    14151418                                CEA072A7236FFA160018839C /* CrashReporterClientSPI.h */,
    14161419                                E31BDE2822E913CC0029B105 /* MachVMSPI.h */,
     1420                                1C503BE423AADEEA0072E66B /* NSLocaleSPI.h */,
    14171421                                93D191CF20CAECE800C51B8E /* objcSPI.h */,
    14181422                                A5098B011C16A4F900087797 /* SecuritySPI.h */,
     
    14781482                                143DDE9520C8BC37007F76FA /* Entitlements.mm */,
    14791483                                A331D95E21F249F6009F02AA /* FileSystemCocoa.mm */,
     1484                                1C503BE523AAE0AE0072E66B /* LanguageCocoa.mm */,
    14801485                                7A6EBA3320746C34004F9C44 /* MachSendRight.cpp */,
    14811486                                A8A472C5151A825A004123FF /* MainThreadCocoa.mm */,
     
    16241629                                C2BCFC401F61D13000C9222C /* Language.cpp in Sources */,
    16251630                                C2BCFC421F61D61600C9222C /* LanguageCF.cpp in Sources */,
     1631                                1C503BE623AAE0AE0072E66B /* LanguageCocoa.mm in Sources */,
    16261632                                C2BCFC551F621F3F00C9222C /* LineEnding.cpp in Sources */,
    16271633                                0FE1646A1B6FFC9600400E7C /* Lock.cpp in Sources */,
  • trunk/Source/WTF/wtf/Language.h

    r221768 r254389  
    2929#include <wtf/Vector.h>
    3030
     31#if PLATFORM(COCOA)
     32#import <CoreFoundation/CoreFoundation.h>
     33#import <wtf/RetainPtr.h>
     34#endif
     35
    3136namespace WTF {
    3237
     
    4449WTF_EXPORT void addLanguageChangeObserver(void* context, LanguageChangeObserverFunction);
    4550WTF_EXPORT void removeLanguageChangeObserver(void* context);
     51WTF_EXPORT String displayNameForLanguageLocale(const String&);
    4652
    47 WTF_EXPORT String displayNameForLanguageLocale(const String&);
     53#if PLATFORM(COCOA)
     54bool canMinimizeLanguages();
     55RetainPtr<CFArrayRef> minimizedLanguagesFromLanguages(CFArrayRef);
     56#endif
     57
    4858}
    4959
  • trunk/Source/WTF/wtf/PlatformMac.cmake

    r252065 r254389  
    2727    spi/cocoa/CrashReporterClientSPI.h
    2828    spi/cocoa/MachVMSPI.h
     29    spi/cocoa/NSLocaleSPI.h
    2930    spi/cocoa/SecuritySPI.h
    3031    spi/cocoa/objcSPI.h
     
    5758    cocoa/Entitlements.mm
    5859    cocoa/FileSystemCocoa.mm
     60    cocoa/LanguageCocoa.mm
    5961    cocoa/MachSendRight.cpp
    6062    cocoa/MainThreadCocoa.mm
  • trunk/Source/WTF/wtf/cf/LanguageCF.cpp

    r237099 r254389  
    4949static String httpStyleLanguageCode(CFStringRef language)
    5050{
    51     SInt32 languageCode;
    52     SInt32 regionCode;
    53     SInt32 scriptCode;
    54     CFStringEncoding stringEncoding;
     51    RetainPtr<CFStringRef> preferredLanguageCode;
     52    // If we can minimize the language list to reduce fingerprinting, we can afford to be more lossless when canonicalizing the locale list.
     53    if (canMinimizeLanguages())
     54        preferredLanguageCode = adoptCF(CFLocaleCreateCanonicalLanguageIdentifierFromString(kCFAllocatorDefault, language));
     55    else {
     56        SInt32 languageCode;
     57        SInt32 regionCode;
     58        SInt32 scriptCode;
     59        CFStringEncoding stringEncoding;
    5560
    56     // FIXME: This transformation is very wrong:
    57     // 1. There is no reason why CFBundle localization names would be at all related to language names as used on the Web.
    58     // 2. Script Manager codes cannot represent all languages that are now supported by the platform, so the conversion is lossy.
    59     // 3. This should probably match what is sent by the network layer as Accept-Language, but currently, that's implemented separately.
    60     CFBundleGetLocalizationInfoForLocalization(language, &languageCode, &regionCode, &scriptCode, &stringEncoding);
    61     RetainPtr<CFStringRef> preferredLanguageCode = adoptCF(CFBundleCopyLocalizationForLocalizationInfo(languageCode, regionCode, scriptCode, stringEncoding));
    62     if (preferredLanguageCode)
    63         language = preferredLanguageCode.get();
     61        // FIXME: This transformation is very wrong:
     62        // 1. There is no reason why CFBundle localization names would be at all related to language names as used on the Web.
     63        // 2. Script Manager codes cannot represent all languages that are now supported by the platform, so the conversion is lossy.
     64        // 3. This should probably match what is sent by the network layer as Accept-Language, but currently, that's implemented separately.
     65        CFBundleGetLocalizationInfoForLocalization(language, &languageCode, &regionCode, &scriptCode, &stringEncoding);
     66        preferredLanguageCode = adoptCF(CFBundleCopyLocalizationForLocalizationInfo(languageCode, regionCode, scriptCode, stringEncoding));
     67    }
     68
     69    if (!preferredLanguageCode)
     70        preferredLanguageCode = language;
     71    auto mutableLanguageCode = adoptCF(CFStringCreateMutableCopy(kCFAllocatorDefault, 0, preferredLanguageCode.get()));
    6472
    6573    // Turn a '_' into a '-' if it appears after a 2-letter language code
    66     if (CFStringGetLength(language) >= 3 && CFStringGetCharacterAtIndex(language, 2) == '_') {
    67         auto mutableLanguageCode = adoptCF(CFStringCreateMutableCopy(kCFAllocatorDefault, 0, language));
     74    if (CFStringGetLength(mutableLanguageCode.get()) >= 3 && CFStringGetCharacterAtIndex(mutableLanguageCode.get(), 2) == '_')
    6875        CFStringReplace(mutableLanguageCode.get(), CFRangeMake(2, 1), CFSTR("-"));
    69         return mutableLanguageCode.get();
    70     }
    7176
    72     return language;
     77    CFStringLowercase(mutableLanguageCode.get(), nullptr);
     78    return mutableLanguageCode.get();
     79
    7380}
    7481
     
    99106    if (userPreferredLanguages.isEmpty()) {
    100107        RetainPtr<CFArrayRef> languages = adoptCF(CFLocaleCopyPreferredLanguages());
     108        languages = minimizedLanguagesFromLanguages(languages.get());
    101109        CFIndex languageCount = CFArrayGetCount(languages.get());
    102110        if (!languageCount)
  • trunk/Tools/ChangeLog

    r254387 r254389  
     12020-01-10  Myles C. Maxfield  <mmaxfield@apple.com>
     2
     3        REGRESSION(r185816): In the Hong Kong locale, navigator.language reports it's in the Taiwan locale
     4        https://bugs.webkit.org/show_bug.cgi?id=200043
     5
     6        Reviewed by Dean Jackson.
     7
     8        Migrate system language tests to LayoutTests, to match the rest of our system language tests.
     9
     10        * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
     11        * TestWebKitAPI/Tests/mac/NavigatorLanguage.mm: Removed.
     12
    1132020-01-10  Jer Noble  <jer.noble@apple.com>
    214
  • trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj

    r254387 r254389  
    376376                5C0BF8931DD599BD00B00328 /* IsNavigationActionTrusted.mm in Sources */ = {isa = PBXBuildFile; fileRef = 57F10D921C7E7B3800ECDF30 /* IsNavigationActionTrusted.mm */; };
    377377                5C0BF8941DD599C900B00328 /* MenuTypesForMouseEvents.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7A99D9931AD4A29D00373141 /* MenuTypesForMouseEvents.mm */; };
    378                 5C0BF8951DD599CD00B00328 /* NavigatorLanguage.mm in Sources */ = {isa = PBXBuildFile; fileRef = E19DB9781B32137C00DB38D4 /* NavigatorLanguage.mm */; };
    379378                5C16F8FC230C94370074C4A8 /* TextSize.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C16F8FB230C942B0074C4A8 /* TextSize.mm */; };
    380379                5C19A5241FD0F60100EEA323 /* CookiePrivateBrowsing.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C19A5231FD0F32600EEA323 /* CookiePrivateBrowsing.mm */; };
     
    25012500                E194E1BA177E5145009C4D4E /* StopLoadingFromDidReceiveResponse.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = StopLoadingFromDidReceiveResponse.mm; sourceTree = "<group>"; };
    25022501                E194E1BC177E534A009C4D4E /* StopLoadingFromDidReceiveResponse.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = StopLoadingFromDidReceiveResponse.html; sourceTree = "<group>"; };
    2503                 E19DB9781B32137C00DB38D4 /* NavigatorLanguage.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = NavigatorLanguage.mm; sourceTree = "<group>"; };
    25042502                E32B549122810AC0008AD702 /* Packed.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = Packed.cpp; sourceTree = "<group>"; };
    25052503                E35FC7B122B82A6D00F32F98 /* JSLockTakesWebThreadLock.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = JSLockTakesWebThreadLock.mm; sourceTree = "<group>"; };
     
    40114009                                5C0BF88C1DD5957400B00328 /* MemoryPressureHandler.mm */,
    40124010                                7A99D9931AD4A29D00373141 /* MenuTypesForMouseEvents.mm */,
    4013                                 E19DB9781B32137C00DB38D4 /* NavigatorLanguage.mm */,
    40144011                                83F22C6320B355EB0034277E /* NoPolicyDelegateResponse.mm */,
    40154012                                A57A34EF16AF677200C2501F /* PageVisibilityStateWithWindowChanges.mm */,
     
    47824779                                7CCE7F241A411AF600447C4C /* Navigation.mm in Sources */,
    47834780                                6351992822275C6A00890AD3 /* NavigationAction.mm in Sources */,
    4784                                 5C0BF8951DD599CD00B00328 /* NavigatorLanguage.mm in Sources */,
    47854781                                5C8BC799218CF44700813886 /* NetworkProcess.mm in Sources */,
    47864782                                5CAE463820193B6A0051610F /* NetworkProcessCrashNonPersistentDataStore.mm in Sources */,
Note: See TracChangeset for help on using the changeset viewer.