Debugging unexpected error message - possible memory management problem?

Posted by Ben Packard on Stack Overflow See other posts from Stack Overflow or by Ben Packard
Published on 2010-05-12T00:15:02Z Indexed on 2010/05/12 0:34 UTC
Read the original article Hit count: 297

I am trying to debug an application that is throwing up strange (to my untutored eyed) errors. When I try to simply log the count of an array...

NSLog(@"Array has %i items", [[self startingPlayers] count]);

...I sometimes get an error:

-[NSCFString count]: unrecognized selector sent to instance 0x1002af600

or other times

-[NSConcreteNotification count]: unrecognized selector sent to instance 0x1002af600

I am not sending 'count' to any NSString or NSNotification, and this line of code works fine normally.

A Theory...

Although the error varies, the crash happens at predictable times, immediately after I have run through some other code where I'm thinking I might have a memory management issue. Is it possible that the object reference is still pointing to something that is meant to be destroyed? Sorry if my terms are off, but perhaps it's expecting the array at the address it calls 'count' on, but finds another previous object that shouldn't still be there (eg an NSString)? Would this cause the problem?

If so, what is the most efficient way to debug and find out what is that address? Most of my debugging up until now involves inserting NSLogs, so this would be a good opportunity to learn how to use the debugger.

© Stack Overflow or respective owner

Related posts about cocoa

Related posts about objective-c