After upgrading to iOS 18, crashes caused by calling null function pointers have changed their crash signal from SIGEVG to SIGKILL, making it impossible for developers to capture crash stacks using third-party components like KSCrash/PLCrashReporter.
Is this a design change in iOS 18's memory protection mechanism? If so, are there any officially recommended crash capture solutions?
Crash example code:
- (void)MockCrashOnNullFunctionPointer {
void (*func)(void) = NULL;
func();
}
Crash report comparison:
Let’s focus this discussion on your other thread.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"