Hang on iOS inside strcmpAfterPrefix

Description

Downstream bug from https://bugs.chromium.org/p/chromium/issues/detail?id=1083881
Low occurrences, but app appears to hang in this function.

0x00000001018e50a8 (Chrome -ucmndata.cpp:112) strcmpAfterPrefix(char const*, char const*, int*)
0x00000001018e4f54 (Chrome -ucmndata.cpp:144) offsetTOCLookupFn(UDataMemory const*, char const*, int*, UErrorCode*)
0x00000001018f6ce0 (Chrome -udata.cpp:1075) doLoadFromCommonData(signed char, char const*, char const*, char const*, char const*, char const*, char const*, char const*, signed char ()(void, char const*, char const*, UDataInfo const*), void*, UErrorCode*, UErrorCode*)
0x00000001018f6774 (Chrome -udata.cpp) doOpenChoice(char const*, char const*, char const*, signed char ()(void, char const*, char const*, UDataInfo const*), void*, UErrorCode*)
0x000000010181addc (Chrome -collationroot.cpp:58) icu_67::CollationRoot::load(UErrorCode&)
0x00000001018c4b94 (Chrome -umutex.h:145) icu_67::umtx_initOnce(icu_67::UInitOnce&, void (*)(UErrorCode&), UErrorCode&)
0x000000010181aef4 (Chrome -collationroot.cpp:76) icu_67::CollationRoot::getRootCacheEntry(UErrorCode&)
0x00000001018ad168 (Chrome -ucol_res.cpp:149) icu_67::CollationLoader::loadTailoring(icu_67::Locale const&, UErrorCode&)
0x0000000101820418 (Chrome -coll.cpp:467) icu_67::Collator::makeInstance(icu_67::Locale const&, UErrorCode&)
0x000000010182057c (Chrome -coll.cpp:448) icu_67::Collator::createInstance(icu_67::Locale const&, UErrorCode&)
0x0000000101e0de30 (Chrome -input_suggester.cc:231) autofill::InputSuggester::StringCanonicalizer::StringCanonicalizer()
0x0000000101e0e08c (Chrome -input_suggester.cc:228) autofill::InputSuggester::InputSuggester(i18n::addressinput::PreloadSupplier*)
0x0000000101e0b880 (Chrome -chrome_address_validator.cc:48) autofill::AddressValidator::AddressValidator(std::_1::unique_ptr<i18n::addressinput::Source, std::1::default_delete<i18n::addressinput::Source> >, std::1::unique_ptr<i18n::addressinput::Storage, std::_1::default_delete<i18n::addressinput::Storage> >, autofill::LoadRulesListener*)
0x0000000101d8a788 (Chrome -autofill_profile_validator.cc:70) autofill::AutofillProfileValidator::AutofillProfileValidator(std::_1::unique_ptr<i18n::addressinput::Source, std::1::default_delete<i18n::addressinput::Source> >, std::1::unique_ptr<i18n::addressinput::Storage, std::_1::default_delete<i18n::addressinput::Storage> >)
0x000000010133a744 (Chrome -autofill_profile_validator_factory.cc:23) autofill::AutofillProfileValidatorFactory::AutofillProfileValidatorFactory()
0x000000010133a6dc (Chrome -autofill_profile_validator_factory.cc:27) autofill::AutofillProfileValidatorFactory::GetInstance()
0x000000010133d6a8 (Chrome -personal_data_manager_factory.cc:79) autofill::PersonalDataManagerFactory::BuildServiceInstanceFor(web::BrowserState*) const
0x00000001017ba950 (Chrome -keyed_service_factory.cc) KeyedServiceFactory::GetServiceForContext(void*, bool)
0x0000000101338714 (Chrome -profile_sync_service_factory.cc:190) ProfileSyncServiceFactory::BuildServiceInstanceFor(web::BrowserState*) const
0x00000001017ba950 (Chrome -keyed_service_factory.cc) KeyedServiceFactory::GetServiceForContext(void*, bool)
0x0000000101473164 (Chrome -unified_consent_service_factory.cc:64) UnifiedConsentServiceFactory::BuildServiceInstanceFor(web::BrowserState*) const
0x00000001017ba950 (Chrome -keyed_service_factory.cc) KeyedServiceFactory::GetServiceForContext(void*, bool)

Activity

Show:
Frank Yung-Fong Tang
October 14, 2020, 6:42 PM

Need to dig out locale at least

Frank Yung-Fong Tang
October 9, 2020, 6:06 AM

agree.

Markus Scherer
October 7, 2020, 9:27 PM

It’s “hanging” in the data loading code, not in collation itself – just called from collation code.

Assignee

Frank Yung-Fong Tang

Reporter

Frank Yung-Fong Tang

Components

Labels

Reviewer

None

Priority

minor

Time Needed

Days

Fix versions