Answered

Crash on iOS 17 when opening a post from a push notification (Intercom version 17.0.0)

  • 10 April 2024
  • 1 reply
  • 154 views

Whenever we schedule a post from Intercom, user receives a push notification and opening it leads to a crash.

It was working before we updated Intercom to 17.0.0, previous version we were on was 16.5.5. We are wondering if it's related to the change introduced in 16.6.0.

iOS version we tested with: iOS 17.3.1, 17.4.1, 17.5

Here's the stack trace:

 

Last Exception Backtrace:
0 CoreFoundation 0x1949cbf24 __exceptionPreprocess + 164 (NSException.m:249)
1 libobjc.A.dylib 0x18c862018 objc_exception_throw + 60 (objc-exception.mm:356)
2 Foundation 0x193897fe8 -[NSConcreteMutableAttributedString initWithString:attributes:] + 356 (NSAttributedString.m:1029)
3 Intercom 0x105be84fc -[ICMActionButton initWithTitle:style:backgroundColor:foregroundColor:] + 376
4 Intercom 0x105be82c4 -[ICMActionButton initFilledButtonWithTitle:] + 140
5 Intercom 0x105c3cd24 -[ICMClosedConversationView createNewConversationButton] + 124
6 Intercom 0x105c3c988 -[ICMClosedConversationView setupView] + 664
7 Intercom 0x105c3c6dc -[ICMClosedConversationView initWithStartNewConversationButtonEnabled:] + 76
8 Intercom 0x105c6b0a4 ConversationViewController.setupClosedConversationViewIfNecessary(showNewConversationButton:) + 76
9 Intercom 0x105d45ab4 ConversationViewModel.updateViewForSuccess(with:) + 664
10 Intercom 0x105d49074 ConversationViewModel.inboxUpdated() + 176
11 Intercom 0x105d49168 @objc ConversationViewModel.inboxUpdated() + 28
12 CoreFoundation 0x1949997cc __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ + 148 (CFNotificationCenter.c:700)
13 CoreFoundation 0x1949996e8 ___CFXRegistrationPost_block_invoke + 88 (CFNotificationCenter.c:193)
14 CoreFoundation 0x194999630 _CFXRegistrationPost + 440 (CFNotificationCenter.c:221)
15 CoreFoundation 0x194997bf8 _CFXNotificationPost + 728 (CFNotificationCenter.c:1247)
16 Foundation 0x193826574 -[NSNotificationCenter postNotificationName:object:userInfo:] + 92 (NSNotification.m:531)
17 Intercom 0x105bf9914 -[ICMDataManager updateWithConversation:] + 604
18 Intercom 0x105c90af0 ConversationInteractor.updateWithExistingConversationIfNeeded() + 108
19 Intercom 0x105c681cc ConversationViewController.viewDidLoad() + 1032
20 Intercom 0x105c68224 @objc ConversationViewController.viewDidLoad() + 28
21 UIKitCore 0x196c2bdc4 -[UIViewController _sendViewDidLoadWithAppearanceProxyObjectTaggingEnabled] + 84 (UIViewController.m:3029)
22 UIKitCore 0x196c2a898 -[UIViewController loadViewIfRequired] + 936 (UIViewController.m:4754)
23 UIKitCore 0x196e66330 -[UINavigationController _updateScrollViewFromViewController:toViewController:] + 124 (UINavigationController.m:7779)
24 UIKitCore 0x196e6573c -[UINavigationController _startTransition:fromViewController:toViewController:] + 192 (UINavigationController.m:7817)
25 UIKitCore 0x196ccd050 -[UINavigationController _startDeferredTransitionIfNeeded:] + 608 (UINavigationController.m:8057)
26 UIKitCore 0x196d31db4 -[UINavigationController __viewWillLayoutSubviews] + 96 (UINavigationController.m:8369)
27 UIKitCore 0x196ff2960 -[UILayoutContainerView layoutSubviews] + 172 (UILayoutContainerView.m:89)
28 UIKitCore 0x196ff2894 __53-[UINavigationController setNeedsDeferredTransition:]_block_invoke + 48 (UINavigationController.m:5364)
29 UIKitCore 0x196c87338 -[_UIAfterCACommitBlock run] + 72 (_UIAfterCACommitQueue.m:137)
30 UIKitCore 0x196c871fc -[_UIAfterCACommitQueue flush] + 164 (_UIAfterCACommitQueue.m:228)
31 UIKitCore 0x196c87114 _runAfterCACommitDeferredBlocks + 496 (UIApplication.m:3144)
32 UIKitCore 0x196c86d4c _cleanUpAfterCAFlushAndRunDeferredBlocks + 80 (UIApplication.m:3108)
33 UIKitCore 0x196c86c5c _UIApplicationFlushCATransaction + 72 (UIApplication.m:3185)
34 UIKitCore 0x196c84474 _UIUpdateSequenceRun + 84 (_UIUpdateSequence.mm:119)
35 UIKitCore 0x196c840b8 schedulerStepScheduledMainSection + 148 (_UIUpdateScheduler.m:1039)
36 UIKitCore 0x196c84f04 runloopSourceCallback + 92 (_UIUpdateScheduler.m:1200)
37 CoreFoundation 0x19499e874 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28 (CFRunLoop.c:1957)
38 CoreFoundation 0x19499e808 __CFRunLoopDoSource0 + 176 (CFRunLoop.c:2001)
39 CoreFoundation 0x19499c2d8 __CFRunLoopDoSources0 + 244 (CFRunLoop.c:2038)
40 CoreFoundation 0x19499b4c4 __CFRunLoopRun + 828 (CFRunLoop.c:2955)
41 CoreFoundation 0x19499ad18 CFRunLoopRunSpecific + 608 (CFRunLoop.c:3420)
42 GraphicsServices 0x1d9e0d1a8 GSEventRunModal + 164 (GSEvent.c:2196)
43 UIKitCore 0x196fd5fac -[UIApplication _run] + 888 (UIApplication.m:3713)
44 UIKitCore 0x197089ed8 UIApplicationMain + 340 (UIApplication.m:5303)
45 Morty 0x102227d34 main + 64 (AppDelegate.swift:18)
46 dyld 0x1b8cace4c start + 2240 (dyldMain.cpp:1298)

 

icon

Best answer by Matthew P15 12 April 2024, 17:41

View original

1 reply

Hi @Karlis Lapsins thanks for bringing this to our attention. We’ve patched it and released the fix in version 17.0.1 of the iOS SDK.

Reply