Termination Reason missing from Native Stacktrace, should be supplied in Debugger Output Window

Crash reports are fine, but when debugging, I want to know the reason for termination and please don't make me go hunting for it.

My app needed to use the camera for barcode scanning, but I had neglected to add the "Privacy - Camera Usage Description" to my info.plist

The stacktrace, however, made no mention of this.

When I went to Xcode / Devices / View Device Logs and found my crash, however, this key nugget popped-out at me:

EXC_CRASH (SIGKILL)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Termination Reason: TCC, This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data.

OK, so now I know the problem is about permissions instead of sunspot activity, but could Mono not have told me that in the Output Window's stack trace?

Here is the stacktrace - no mention of the root cause:

2017-11-15 09:21:06.601 TouchContainer[573:152293] critical: 
Native stacktrace:

2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    0   TouchContainer                      0x00000001060f6d8c TouchContainer + 21065100
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    1   libsystem_platform.dylib            0x0000000186727b60 _sigtramp + 52
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    2   libsystem_kernel.dylib              0x0000000186613100 <redacted> + 100
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    3   libsystem_kernel.dylib              0x000000018661312c system_set_sfi_window + 0
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    4   TCC                                 0x000000018956599c <redacted> + 0
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    5   TCC                                 0x00000001895658bc <redacted> + 0
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    6   TCC                                 0x000000018956913c <redacted> + 316
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    7   libxpc.dylib                        0x0000000186765a0c <redacted> + 60
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    8   libxpc.dylib                        0x0000000186765948 <redacted> + 88
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    9   libdispatch.dylib                   0x0000000186485758 <redacted> + 16
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    10  libdispatch.dylib                   0x000000018649d060 <redacted> + 324
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    11  libdispatch.dylib                   0x000000018648bf54 <redacted> + 400
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    12  libdispatch.dylib                   0x00000001864921c8 <redacted> + 596
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    13  libdispatch.dylib                   0x0000000186491f10 <redacted> + 120
2017-11-15 09:21:06.602 TouchContainer[573:152293] critical:    14  libsystem_pthread.dylib             0x000000018672b130 _pthread_wqthread + 1268
2017-11-15 09:21:06.603 TouchContainer[573:152293] critical:    15  libsystem_pthread.dylib             0x000000018672ac30 start_wqthread + 4
2017-11-15 09:21:06.603 TouchContainer[573:152293] critical: 
=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================
Sign In or Register to comment.