Description
Crashlytics itself crashes while symbolicating stack frames ("crash inside the crash reporter"). In -[FIRCLSSymbolResolver updateStackFrame:] the binary image path is read from the recorded session data and passed to lastPathComponent without a type check:
// Crashlytics/Crashlytics/Models/FIRCLSSymbolResolver.m:171 (tag 11.14.0; identical on main)
[frame setLibrary:[[binaryImage objectForKey:@"path"] lastPathComponent]];
When the recorded "path" value is JSON null, deserialization yields NSNull, which does not respond to lastPathComponent:
NSInvalidArgumentException: -[NSNull lastPathComponent]: unrecognized selector sent to instance
-[FIRCLSSymbolResolver updateStackFrame:] FIRCLSSymbolResolver.m:171
The line has been unchanged since the 2020 open-source import (#4610) and carries no nil/NSNull guard through current main; Crashlytics/CHANGELOG.md has no related entry.
Reproducing the issue
Not deterministically reproducible from app code: the crash is secondary — it fires when the SDK symbolicates previously recorded frames whose binary image entry carries a null path.
Firebase SDK Version
11.14.0
Xcode Version
26.6
Installation Method
CocoaPods
Firebase Product(s)
Crashlytics
Targeted Platforms
iOS
Relevant Log Output
If using Swift Package Manager, the project's Package.resolved
Expand Package.resolved snippet
Replace this line with the contents of your Package.resolved.
If using CocoaPods, the project's Podfile.lock
Expand Podfile.lock snippet
Replace this line with the contents of your Podfile.lock!
Description
Crashlytics itself crashes while symbolicating stack frames ("crash inside the crash reporter"). In
-[FIRCLSSymbolResolver updateStackFrame:]the binary image path is read from the recorded session data and passed tolastPathComponentwithout a type check:When the recorded
"path"value is JSONnull, deserialization yieldsNSNull, which does not respond tolastPathComponent:The line has been unchanged since the 2020 open-source import (#4610) and carries no nil/NSNull guard through current
main;Crashlytics/CHANGELOG.mdhas no related entry.Reproducing the issue
Not deterministically reproducible from app code: the crash is secondary — it fires when the SDK symbolicates previously recorded frames whose binary image entry carries a null
path.Firebase SDK Version
11.14.0
Xcode Version
26.6
Installation Method
CocoaPods
Firebase Product(s)
Crashlytics
Targeted Platforms
iOS
Relevant Log Output
If using Swift Package Manager, the project's Package.resolved
Expand
Package.resolvedsnippetReplace this line with the contents of your Package.resolved.If using CocoaPods, the project's Podfile.lock
Expand
Podfile.locksnippetReplace this line with the contents of your Podfile.lock!