Thursday, 12 September 2013

XCode: with lldb, how would I call po on zombie object?

XCode: with lldb, how would I call po on zombie object?

I have a crash in some code that happens only when the app is busy running
several NSOperations at once.
With Zombies enabled (I am on ARC with a OS X app), I get a nice message
like: -[__NSDictionaryM release]: message sent to deallocated instance
0x104da4f30
This happens when the OS is cleaning up the NSOperation. I would like to
see the contents of the dictionary, but
(lldb) po 0x104da4f30
or (lldb) po [0x104da4f30 description]
don't work,
error: Execution was interrupted, reason: EXC_BREAKPOINT
(code=EXC_I386_BPT, subcode=0x0).
The process has been returned to the state before expression evaluation.
it seems since the object is a zombie, it will not run the code. By seeing
the dictionary contents, I can tell who made it and where I messed up.
Anyone know how to tell lldb to skip the exception? I can see hints in the
lldb help, but my attempts did not help.

No comments:

Post a Comment