0

友達を取得するためにフェッチを作成します (「friend_id」は Friend エンティティのプロパティです)。

NSPredicate* perdicate = [NSPredicate predicateWithFormat:@"friend_id IN %@", aryFriendIds];

クラッシュすることもあります - 今までに一度発生しました。

Thread 11:

0   libsystem_kernel.dylib        0x313bc848 __kill + 8

1   Messenger                     0x00026fcc -[CrashInfoReporter fatalSignal:Handler_Impl:With:] (CrashInfoReporter.m:575)

2   Messenger                     0x000250aa fatal_sig_handler (CrashInfoReporter.m:401)

3   libsystem_c.dylib             0x33ac47e6 _sigtramp + 42

4   CoreFoundation                0x3714fbe8 CFEqual + 100

5   CoreFoundation                0x3715b01e -[__NSCFString isEqual:] + 210

6   CoreFoundation                0x37165318 -[NSArray containsObject:] + 164

7   Foundation                    0x37aba56a -[NSInPredicateOperator performPrimitiveOperationUsingObject:andObject:] + 358

8   CoreData                      0x369e1b36 -[NSMemoryStoreInPredicateOperator performPrimitiveOperationUsingObject:andObject:] + 942

9   Foundation                    0x37a1a57e -[NSPredicateOperator performOperationUsingObject:andObject:] + 94

10  Foundation                    0x37a19be6 -[NSComparisonPredicate evaluateWithObject:substitutionVariables:] + 246

11  Foundation                    0x37a197bc -[NSPredicate evaluateWithObject:] + 16

12  CoreData                      0x36959284 -[NSManagedObjectContext executeFetchRequest:error:] + 2232

再現できないので原因がわかりませんが、クラッシュ行が 4 CoreFoundation 0x3714fbe8 CFEqual + 100になっているので、文字列比較に問題があるのではないかと思います。

ヒントをありがとう。


NSNumber or NSArray objectCFEqual を比較できるようにいくつか追加しようとしましaryFriendIdsたが、うまく機能します。

4

0 に答える 0