Post

Replies

Boosts

Views

Activity

iOS 14 crash in NSFetchedResultsController's indexPathForObject function
Hi Team, I've been facing a crash on iOS 14 onwards on using NSFetchedResultsController. Precondition: I'm using NSFetchRequest to initialise NSFetchedResultsController and in fetch request I'm using propertiesToFetch to fetch a single property, resultType as NSDictionaryResultType with returnsDistinctResults as YES for getting distinct results. NSFetchedResultsController is used as a data source for a table in our application. Problem: This was working fine in <iOS 14 versions, but it's started to crash for iOS 14 and and above(14.1), the reason for the same is that the dictionary we pass to get the index path in function 'indexPathForObject' is failing to return the index path with exception unrecognised selector(logs attached). I did not found any document or a new API which can be used for the same purpose. Please let me know how we can resolve this issue. Stack Trace: 2020-10-27 11:50:22.165740+0530 XYZ[70020:1505717] -[__NSSingleEntryDictionaryI objectID]: unrecognized selector sent to instance 0x600007efeb80 2020-10-27 11:50:22.245891+0530 XYZ[70020:1505717] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSSingleEntryDictionaryI objectID]: unrecognized selector sent to instance 0x600007efeb80' First throw call stack: ( 0&#9; CoreFoundation&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010b681126 __exceptionPreprocess + 242 1&#9; libobjc.A.dylib&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x000000010b511f78 objc_exception_throw + 48 2&#9; CoreFoundation&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010b68fc6f +[NSObject(NSObject) instanceMethodSignatureForSelector:] + 0 3&#9; CoreFoundation&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010b685666 _forwarding_ + 1489 4&#9; CoreFoundation&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010b687698 _CF_forwarding_prep_0 + 120 5&#9; CoreData&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x00000001051e3f23 -[_NSDefaultSectionInfo indexOfObject:] + 80 6&#9; CoreData&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010533671d -[NSFetchedResultsController indexPathForObject:] + 151 7&#9; Lido_mPilot&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x0000000101ed4ac3 -[LMSFetchedResultsDataSource indexPathForObject:] + 99 8&#9; Lido_mPilot&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x000000010238b1dc -[LMSFleetTableViewDataSource indexPathForObject:] + 140 9&#9; Lido_mPilot&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x0000000101e160ad -[LMSFleetTableViewController viewWillAppear:] + 365 10&#9;UIKitCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x0000000122115fb2 -[UIViewController _setViewAppearState:isAnimating:] + 654 11&#9;UIKitCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001221167db -[UIViewController __viewWillAppear:] + 106 12&#9;UIKitCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x0000000122047534 -[UINavigationController _startTransition:fromViewController:toViewController:] + 726 13&#9;UIKitCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x0000000122048371 -[UINavigationController _startDeferredTransitionIfNeeded:] + 851 14&#9;UIKitCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001220496dc -[UINavigationController __viewWillLayoutSubviews] + 150 15&#9;UIKitCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x0000000122029f1e -[UILayoutContainerView layoutSubviews] + 217 16&#9;UIKitCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x0000000122d9c9ce -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 2874 17&#9;QuartzCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x00000001099e9d87 -[CALayer layoutSublayers] + 258 18&#9;QuartzCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x00000001099f0239 _ZN2CA5Layer16layout_if_neededEPNS_11TransactionE + 575 19&#9;QuartzCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x00000001099fbf91 _ZN2CA5Layer28layout_and_display_if_neededEPNS_11TransactionE + 65 20&#9;QuartzCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010993c078 _ZN2CA7Context18commit_transactionEPNS_11TransactionEdPd + 496 21&#9;QuartzCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x0000000109972e13 _ZN2CA11Transaction6commitEv + 783 22&#9;UIKitCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001228701a3 _afterCACommitHandler + 164 23&#9;CoreFoundation&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010b5ee6b3 CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 23 24&#9;CoreFoundation&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010b5e8f3f __CFRunLoopDoObservers + 547 25&#9;CoreFoundation&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010b5e94e2 __CFRunLoopRun + 1113 26&#9;CoreFoundation&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010b5e8b9e CFRunLoopRunSpecific + 567 27&#9;GraphicsServices&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;0x000000010e2e3db3 GSEventRunModal + 139 28&#9;UIKitCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x000000012283faf3 -[UIApplication _run] + 912 29&#9;UIKitCore&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x0000000122844a04 UIApplicationMain + 101 30&#9;Lido_mPilot&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x0000000102421ce1 main + 193 31&#9;libdyld.dylib&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x000000010cf64415 start + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSSingleEntryDictionaryI objectID]: unrecognized selector sent to instance 0x600007efeb80' terminating with uncaught exception of type NSException CoreSimulator 732.17 - Device: iPad Pro (9.7-inch) (FE6E057B-B3C6-495D-9305-182325E6C237) - Runtime: iOS 14.0 (18A372) - DeviceType: iPad Pro (9.7-inch) Thank You Harish Pathak
2
0
1k
Oct ’20