libicucore.A.dylib crashes only on iPhone 8 and 8 plus.

We received many crash reports from our app on iPhone 8 and 8 plus when they are on sale.


libicucore.A.dylib 0x180982f8c __ZN3icu12RegexMatcher12MatchChunkAtEiaR10UErrorCode

libicucore.A.dylib 0x180980c44 __ZN3icu12RegexMatcher12MatchChunkAtEiaR10UErrorCode

libicucore.A.dylib 0x180983c68 __ZN3icu12RegexMatcher7matchesExR10UErrorCode

Foundation 0x1815fc550 <redacted>

Foundation 0x1815f9078 <redacted>

Foundation 0x1814ca3e4 <redacted>

<... App Code HERE ...>

libdispatch.dylib 0x180521088 <redacted>

libdispatch.dylib 0x180521048 <redacted>

libdispatch.dylib 0x1805625c0 <redacted>

libdispatch.dylib 0x180562180 <redacted>

libsystem_pthread.dylib 0x1807c7130 <redacted>

libsystem_pthread.dylib 0x1807c6c30 <redacted>


It crashes in our source code:


- (BOOL) isValidName : (NSString *) name {

return [self.regexTestName evaluateWithObject:name]; // Crash here!

}


Also, 'regexTestName' defines as:


NSString *namePattern = @"^((?!^distinct_id$|^original_id$|^time$|^event$|^properties$|^id$|^first_id$|^second_id$|^users$|^events$|^event$|^user_id$|^date$|^datetime$)[a-zA-Z_$][a-zA-Z\\d_$]{0,99})$";

self.regexTestName = [NSPredicate predicateWithFormat:@"SELF MATCHES[c] %@", namePattern];


I cannot reproduce this crash, but it reported 1000+ times in past 3 days. And I don't receive any report from other devices excepted iPhone 8 and 8 plus.



So, Is that a system bug on iPhone 8?


Thank you.


Br, Xin

Replies

If anyone has a solution or idea, please leave a message here. Thanks.