I hope it's okay now.
Perfect. Thanks!
On the plus side, these crash reports rule out a wide variety of gnarly problems with similar symptoms. On the minus side, they don’t actually suggest what the problem might be.
In both cases we see this:
Exception Type: EXC_CRASH (SIGKILL)
which suggests that the process was killed from outside. The two crash reports have different backtraces, namely this:
Thread 0 Crashed:
0 dyld … strcmp + 12
1 dyld … objc::StringHashTable::tryGetIndex(char const*) const + 140 (OptimizerObjC.h:114)
2 dyld … dyld4::PrebuiltObjC::ObjCOptimizerImage::visitReferenceToObjCSelector(objc::SelectorHashTable const*, dyld3::Map<char const*, dyld4::Loader::BindTarget, dyld3::HashCString, dyld3::EqualCString> con... + 48 (PrebuiltObjC.cpp:440)
3 dyld … dyld3::MachOAnalyzer::forEachObjCSelectorReference(unsigned long long, unsigned long long, dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned long long, unsigned long long, bool&) block_p... + 128 (MachOAnalyzer.cpp:5109)
4 dyld … dyld4::PrebuiltObjC::forEachSelectorReferenceToUnique(dyld4::RuntimeState&, dyld3::MachOAnalyzer const*, unsigned long long, dyld4::ObjCBinaryInfo const&, dyld3::MachOAnalyzer::VMAddrConverter cons... + 144 (PrebuiltObjC.cpp:1013)
5 dyld … dyld4::PrebuiltObjC::make(Diagnostics&, dyld4::RuntimeState&) + 2600 (PrebuiltObjC.cpp:729)
6 dyld … dyld4::PrebuiltLoaderSet::makeLaunchSet(Diagnostics&, dyld4::RuntimeState&, dyld4::MissingPaths const&) + 476 (PrebuiltLoader.cpp:1737)
7 dyld … dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*) + 2260 (dyldMain.cpp:680)
8 dyld … start + 412 (dyldMain.cpp:869)
and this:
Thread 0 Crashed:
0 dyld … ___ZNK5dyld46Loader18applyFixupsGenericER11DiagnosticsRNS_12RuntimeStateERKN5dyld35ArrayIPKvEESB_bRKNS6_INS0_21MissingFlatLazySymbolEEE_block_invoke_3 + 24 (Loader.cpp:1192)
1 dyld … dyld3::MachOAnalyzer::forEachRebase_Opcodes(Diagnostics&, dyld3::MachOLoaded::LinkEditInfo const&, dyld3::MachOFile::SegmentInfo const*, void (char const*, dyld3::MachOLoaded::LinkEditInfo const&, ... + 424 (MachOAnalyzer.cpp:6374)
2 dyld … dyld3::MachOAnalyzer::forEachRebaseLocation_Opcodes(Diagnostics&, void (unsigned long long, bool&) block_pointer) const + 324 (MachOAnalyzer.cpp:6310)
3 dyld … dyld4::Loader::applyFixupsGeneric(Diagnostics&, dyld4::RuntimeState&, dyld3::Array<void const*> const&, dyld3::Array<void const*> const&, bool, dyld3::Array<dyld4::Loader::MissingFlatLazySymbol> co... + 260 (Loader.cpp:1190)
4 dyld … dyld4::JustInTimeLoader::applyFixups(Diagnostics&, dyld4::RuntimeState&, dyld4::DyldCacheDataConstLazyScopedWriter&, bool) const + 440 (JustInTimeLoader.cpp:447)
5 dyld … dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*) + 1404 (dyldMain.cpp:559)
6 dyld … start + 412 (dyldMain.cpp:869)
but they’re both really early in the dynamic linking process, so early that it’s unlikely that any of the code in your app has run yet.
And the fact that the backtraces are different is further evidence that the process was killed from outside, with the code doing the killing running asynchronously with your code inside the process and thus catching your code (well, the dynamic linker’s code :-) at different points.
Earlier you wrote:
I get a lot of crashlogs in the Xcode organizer on iOS 15 all related
to dyld
.
So, just to clarify, this means that you’ve not seen anything like this on iOS 14, right?
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"