I'm getting this error:
With no stack trace.
-[__NSArrayI countByEnumeratingWithState:objects:count:]: message sent to deallocated instance
What would call this method?
Is it possible to pin down what's calling this? I have zombies on but don't see the caller.
Here's thread1:
The only other clickable line is this from AFNetworking ([runloop run]
). I just upgraded my AFNetworking pod.
+ (void)networkRequestThreadEntryPoint:(id)__unused object {
@autoreleasepool {
[[NSThread currentThread] setName:@"AFNetworking"];
NSRunLoop *runLoop = [NSRunLoop currentRunLoop];
[runLoop addPort:[NSMachPort port] forMode:NSDefaultRunLoopMode];
[runLoop run];
}
}
EDIT: The above breakpoint on @autoreleasepool
was not even hit. I did find this in my code on the same crash in another thread (didn't see this last time):, on the archiveSuccessful = line
- (void)archiveContent:(BOOL)changeNotification userInfo:(NSDictionary *)userInfo {
BOOL archiveSuccessful;
@synchronized(self) {
archiveSuccessful = [NSKeyedArchiver archiveRootObject:self.contentDictionary toFile:self.filePath];
}
if (archiveSuccessful) {
if(changeNotification && self.contentChangedNotificationName) {
[[NSNotificationCenter defaultCenter] postNotificationName:self.contentChangedNotificationName object:nil userInfo:userInfo];
}
} else {
NSAssert(NO, @"Saving archive to %@ was not successful", self.filePath);
}
}
This is called by
- (void)addObjects:(NSArray *)objects changeNotification:(BOOL)changeNotification {
[objects enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
if([obj conformsToProtocol:NSProtocolFromString(@"DRLocalObject")]) {
[self addObject:obj changeNotification:NO];
}
}];
debugger printouts from the [self addObject...
line
(lldb) po obj
0x00007fde0ff56770
(lldb) po 0x00007fde0ff56770
140591727208304
EDIT:
threadMain:
called from Google analytics. A project find & quick open shows no selector named threadMain: