[CallKit] App crashed when get pendingTransactions

Description:

  • The crash happens only when I end a call.And then get the pendingTransactions, then you know , the app crashed.

Reproduce:

  • Only happens once

From the crash frame, it seems that the pointer has been released.

Launch Time:         2024-04-21 21:45:32.8840 +0800
OS Version:          iPhone OS 17.0.1 (21A340)
Release Type:        User
Baseband Version:    5.00.00
Report Version:      104(?)
Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype:  KERN_INVALID_ADDRESS at 0x4000000000000000 -> 0x0000000000000000 (possible pointer authentication failure) 
Exception Codes: 0x0000000000000001, 0x4000000000000000
Exception Note:  EXC_CORPSE_NOTIFY(?)

VM Region Info: 0 is not in any region.  Bytes before following region: 4306255872
      REGION TYPE                 START - END      [ VSIZE] PRT/MAX SHRMOD  REGION DETAIL
      UNUSED SPACE AT START
--->  
      __TEXT                   100ac4000-1096dc000 [140.1M] r-x/r-x SM=COW  ...e.rc.app/Glip

Termination Reason: SIGNAL;[11] Segmentation fault: 11
Terminating Process: exc handler [892] 

Triggered by Thread:  0

Kernel Triage:
None

Thread 0 name:  com.apple.callkit.callprovider
Thread 0 Crashed:
0   None                                    0x0 0x0 + 0
1   CallKit                                 0x1bfd19978 -[CXTransaction updateCopy:withZone:] + 80
2   CallKit                                 0x1bfd19ab0 -[CXTransaction copyWithZone:] + 64
3   CoreFoundation                          0x19f1b6dac -[NSArray initWithArray:range:copyItems:] + 276
4   CoreFoundation                          0x19f1b6c68 -[__NSPlaceholderArray initWithArray:copyItems:] + 108
5   CallKit                                 0x1bfd181a8 __41-[CXAbstractProvider pendingTransactions]_block_invoke + 72
6   libdispatch.dylib                       0x1a70a3300 _dispatch_client_callout + 20
7   libdispatch.dylib                       0x1a70b26b4 _dispatch_lane_barrier_sync_invoke_and_complete + 56
8   CallKit                                 0x1bfd180e0 -[CXAbstractProvider pendingTransactions] + 180
9   CallKit                                 0x1bfd4b040 -[CXProvider pendingTransactions] + 32
10  Glip                                    0x103179a30 specialized AudioCallKitManager.isCallEndAndAccept(_:) + 51
11  Glip                                    0x1031760b4 AudioCallKitManager.isCallEndAndAccept(_:) + 27 (<compiler-generated>:0) [inlined]
12  Glip                                    0x1031760b4 AudioCallKitManager.provider(_:perform:) + 1227 (AudioCallKitManager+CXAction2InAppActions.swift:65)
13  Glip                                    0x103179068 @objc AudioCallKitManager.provider(_:perform:) + 87
14  Glip                                    0x1038bd04c thunk for @escaping @callee_guaranteed (@unowned CXProvider, @unowned CXEndCallAction) -> () + 19 (<compiler-generated>:0) [inlined]
15  Glip                                    0x1038bd04c CallKitController.provider(_:perform:) + 727 (CallKitController.swift:174)
16  Glip                                    0x1038bcd48 @objc CallKitController.provider(_:perform:) + 87
17  CallKit                                 0x1bfd4a4c4 -[CXProvider performAction:] + 440
18  CallKit                                 0x1bfd18e04 __49-[CXAbstractProvider provider:commitTransaction:]_block_invoke.7 + 452
19  libdispatch.dylib                       0x1a70a16a8 _dispatch_call_block_and_release + 32
20  libdispatch.dylib                       0x1a70a3300 _dispatch_client_callout + 20
21  libdispatch.dylib                       0x1a70b1998 _dispatch_main_queue_drain + 984
22  libdispatch.dylib                       0x1a70b15b0 _dispatch_main_queue_callback_4CF + 44
23  CoreFoundation                          0x19f1ac9bc __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 16
24  CoreFoundation                          0x19f1a96c8 __CFRunLoopRun + 1996
25  CoreFoundation                          0x19f1a8e18 CFRunLoopRunSpecific + 608
26  GraphicsServices                        0x1e1c695ec GSEventRunModal + 164
27  UIKitCore                               0x1a15b7350 -[UIApplication _run] + 888
28  UIKitCore                               0x1a15b698c UIApplicationMain + 340
29  Glip                                    0x100b61ec8 main + 203 (main.swift:13)
30  dyld                                    0x1c198fd44 start + 2104