The code:

UIColor * color = [NSKeyedUnarchiver unarchiveObjectWithData:self.colorData];

if ([countedColorSet containsObject:color]) {
    //Do stuff
}


What's wrong:

No errors, but "Do stuff" never runs (64 bit)... even when 'color' is identical to one stored in the set. Testing with no other conditions changed on 32 bit works fine and "Do stuff" runs.


So:

Am I going crazy? What could I be missing?

有帮助吗?

解决方案

Confirmed via an Apple Technical support incident that this is a bug relating to the archiving class on arm64. Their suggestion was to build a custom archiver class instead.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top