[iOS18][RTL][Crash]

Hi all,

Firebase statistics show that some crashes seem to occur suddenly. Can you give me some suggestions?

Users also meet the following requirements:

  1. iOS18 and above
  2. RTL language

From the stack frame, the crash occurred in the transition animation project, but I did not reproduce this stack frame

A very small number of users can experience it twice

The crashed page is relatively complex, and it is a mixture of auto-layout and frame

I retrieved some other articles, but they don’t seem to be the same problem

  1. https://developer.apple.com/forums/thread/693118
  2. https://stackoverflow.com/questions/56027014/collectionview-crashing-in-nsisengine-after-a-few-scrolls

Thank you for reading, looking forward to your reply ;)

Distributor ID:      com.apple.AppStore
Hardware Model:      iPhone13,2
Version:             2.88.4 (1)
AppStoreTools:       15F31e
AppVariant:          1:iPhone13,2:15
Code Type:           ARM-64 (Native)
Role:                Foreground
Parent Process:      launchd [1]

Date/Time:           2024-09-22 16:39:48.5997 +0300
Launch Time:         2024-09-22 16:39:23.7734 +0300
OS Version:          iPhone OS 18.0 (22A3354)
Release Type:        User
Baseband Version:    5.02.06
Report Version:      104

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Termination Reason: SIGNAL 6 Abort trap: 6

Triggered by Thread:  0

Last Exception Backtrace:
0   CoreFoundation                	0x19484508c __exceptionPreprocess + 164 (NSException.m:249)
1   libobjc.A.dylib               	0x191b472e4 objc_exception_throw + 88 (objc-exception.mm:356)
2   Foundation                    	0x193c162fc -[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 272 (NSException.m:261)
3   CoreAutoLayout                	0x1b7662160 _engineVar_rawRemove + 376 (NSISEngine_EngineVar.h:181)
4   CoreAutoLayout                	0x1b766e9f4 -[NSISEngine removeConstraintWithMarker:] + 1084 (NSISEngine.m:2701)
5   CoreAutoLayout                	0x1b766ce24 -[NSLayoutConstraint _removeFromEngine:] + 148 (NSLayoutConstraint.m:1693)
6   UIKitCore                     	0x19701d224 -[UIView _layoutEngine_willRemoveLayoutConstraint:] + 60 (NSLayoutConstraint_UIKitAdditions.m:1080)
7   UIKitCore                     	0x19701d1c8 -[UIView(UIConstraintBasedLayout) nsli_removeConstraint:] + 84 (NSLayoutConstraint_UIKitAdditions.m:1298)
8   CoreAutoLayout                	0x1b7668ad8 __55+[NSLayoutConstraint _addOrRemoveConstraints:activate:]_block_invoke + 40 (NSLayoutConstraint.m:2097)
9   CoreAutoLayout                	0x1b766f030 -[NSISEngine withBehaviors:performModifications:] + 84 (NSISEngine.m:1995)
10  CoreAutoLayout                	0x1b76693e0 +[NSLayoutConstraint _addOrRemoveConstraints:activate:] + 308 (NSLayoutConstraint.m:2095)
11  UIKitCore                     	0x19701b96c -[UIView(AdditionalLayoutSupport) _withUnsatisfiableConstraintsLoggingSuspendedIfEngineDelegateExists:] + 480 (NSLayoutConstraint_UIKitAdditions.m:4388)
12  UIKitCore                     	0x19701b118 -[UIView _processChangesFromOldTraits:toCurrentTraits:withBehavior:] + 196 (UIView.m:7857)
13  UIKitCore                     	0x19701b010 -[UIView _updateTraitCollectionAndProcessChangesWithBehavior:previousCollection:] + 112 (UIView.m:7848)
14  UIKitCore                     	0x19701aedc -[UIView _updateTraitsIfNeededWithBehavior:] + 156 (UIView.m:7832)
15  UIKitCore                     	0x196fb12f4 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 152 (UIView.m:17640)
16  UIKitCore                     	0x196fb1524 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 712 (UIView.m:0)
17  UIKitCore                     	0x197089ab8 -[UIScrollView _didMoveFromWindow:toWindow:] + 88 (UIScrollView.m:3593)
18  UIKitCore                     	0x196fb1524 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 712 (UIView.m:0)
19  UIKitCore                     	0x197089ab8 -[UIScrollView _didMoveFromWindow:toWindow:] + 88 (UIScrollView.m:3593)
20  UIKitCore                     	0x196fb1524 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 712 (UIView.m:0)
21  UIKitCore                     	0x196fa31b4 __45-[UIView(Hierarchy) _postMovedFromSuperview:]_block_invoke + 128 (UIView.m:14070)
22  UIKitCore                     	0x196fa60e4 -[UIView _postMovedFromSuperview:] + 492 (UIView.m:14053)
23  UIKitCore                     	0x196fa4b20 -[UIView(Internal) _addSubview:positioned:relativeTo:] + 2192 (UIView.m:18579)
24  UIKitCore                     	0x19821a2b4 -[_UIViewControllerTransitionConductor _startTransition:fromViewController:toViewController:] + 944 (_UIViewControllerTransitionConductor.m:325)
25  UIKitCore                     	0x198219b80 -[_UIViewControllerTransitionConductor startDeferredTransitionIfNeeded] + 644 (_UIViewControllerTransitionConductor.m:207)
26  UIKitCore                     	0x1970e34b0 -[UINavigationController __viewWillLayoutSubviews] + 84 (UINavigationController.m:8020)
27  UIKitCore                     	0x1973867e8 -[UILayoutContainerView layoutSubviews] + 172 (UILayoutContainerView.m:147)
28  UIKitCore                     	0x196f9c578 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 2424 (UIView.m:20400)
29  XXXXXX                       	0x1083ecc9c UIView.layoutSublayersOnMainThread(of:) + 40 (Swizzling+Extensions.swift:85)
30  XXXXXX                       	0x1083ecc9c @objc UIView.layoutSublayersOnMainThread(of:) + 104 (:78)
31  QuartzCore                    	0x1962e1664 CA::Layer::layout_if_needed(CA::Transaction*) + 496 (CALayer.mm:10944)
32  QuartzCore                    	0x1962e11f0 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 148 (CALayer.mm:2638)
33  QuartzCore                    	0x19633829c CA::Context::commit_transaction(CA::Transaction*, double, double*) + 472 (CAContextInternal.mm:2613)
34  QuartzCore                    	0x1962b70d4 CA::Transaction::commit() + 648 (CATransactionInternal.mm:420)
35  QuartzCore                    	0x1962fa398 CA::Transaction::flush_as_runloop_observer(bool) + 88 (CATransactionInternal.mm:928)
36  UIKitCore                     	0x19703ab78 _UIApplicationFlushCATransaction + 52 (UIApplication.m:3311)
37  UIKitCore                     	0x197038174 __setupUpdateSequence_block_invoke_2 + 332 (_UIUpdateScheduler.m:1652)
38  UIKitCore                     	0x197037fe8 _UIUpdateSequenceRun + 84 (_UIUpdateSequence.mm:136)
39  UIKitCore                     	0x197037c38 schedulerStepScheduledMainSection + 172 (_UIUpdateScheduler.m:1171)
40  UIKitCore                     	0x197038bac runloopSourceCallback + 92 (_UIUpdateScheduler.m:1334)
41  CoreFoundation                	0x194818088 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28 (CFRunLoop.c:1950)
42  CoreFoundation                	0x19481801c __CFRunLoopDoSource0 + 176 (CFRunLoop.c:1994)
43  CoreFoundation                	0x194815b08 __CFRunLoopDoSources0 + 244 (CFRunLoop.c:2031)
44  CoreFoundation                	0x194814d04 __CFRunLoopRun + 840 (CFRunLoop.c:2949)
45  CoreFoundation                	0x1948145b8 CFRunLoopRunSpecific + 572 (CFRunLoop.c:3414)
46  GraphicsServices              	0x1e02aa1c4 GSEventRunModal + 164 (GSEvent.c:2196)
47  UIKitCore                     	0x19736a5f0 -[UIApplication _run] + 816 (UIApplication.m:3820)
48  UIKitCore                     	0x19741910c UIApplicationMain + 340 (UIApplication.m:5472)
49  XXXXXX                       	0x10460c0ec main + 236 (main.swift:18)
50  dyld                          	0x1b9fe7d34 start + 2724 (dyldMain.cpp:1334)

Thread 0 Crashed:
0   libsystem_kernel.dylib        	0x00000001e4663274 __pthread_kill + 8 (:-1)
1   libsystem_pthread.dylib       	0x000000021bb92ef8 pthread_kill + 268 (pthread.c:1721)
2   libsystem_c.dylib             	0x000000019c577b6c __abort + 136 (abort.c:163)
3   libsystem_c.dylib             	0x000000019c577ae4 abort + 140 (abort.c:130)
4   libc++abi.dylib               	0x000000021bab65b8 abort_message + 132 (abort_message.cpp:78)
5   libc++abi.dylib               	0x000000021baa4bac demangling_terminate_handler() + 348 (cxa_default_handlers.cpp:77)
6   libobjc.A.dylib               	0x0000000191b62e04 _objc_terminate() + 156 (objc-exception.mm:496)
7   XXXXXX                       	0x000000010ca8d014 FIRCLSTerminateHandler() + 340 (FIRCLSException.mm:452)
...
12  libc++abi.dylib               	0x000000021bab587c std::__terminate(void (*)()) + 16 (cxa_handlers.cpp:59)
13  libc++abi.dylib               	0x000000021bab90ac __cxa_rethrow + 204 (cxa_exception.cpp:648)
14  libobjc.A.dylib               	0x0000000191b5e650 objc_exception_rethrow + 44 (objc-exception.mm:399)
15  CoreFoundation                	0x000000019481467c CFRunLoopRunSpecific + 768 (CFRunLoop.c:3430)
16  GraphicsServices              	0x00000001e02aa1c4 GSEventRunModal + 164 (GSEvent.c:2196)
17  UIKitCore                     	0x000000019736a5f0 -[UIApplication _run] + 816 (UIApplication.m:3820)
18  UIKitCore                     	0x000000019741910c UIApplicationMain + 340 (UIApplication.m:5472)
19  XXXXXX                       	0x000000010460c0ec main + 236 (main.swift:18)
20  dyld                          	0x00000001b9fe7d34 start + 2724 (dyldMain.cpp:1334)
[iOS18][RTL][Crash]
 
 
Q