Reputation: 1323
I am using ARC in my application with core data and threading etc, after doing all that hard work to get core data work with threading without any crashes now I am getting a new crash with the reason-
double free*** set a breakpoint in malloc_error_break to debug
How am I supposed to handle this? I have no control on the objects' retain counts.
Upvotes: 4
Views: 15995
Reputation: 3675
Upvotes: 8
Reputation: 104698
If you want to know who destroyed the allocation:
Simply breaking as the message suggests will give you clues.
If you want to know who created the allocation:
Although you can also do this from the command line using malloc stack logging, it may be a gentler introduction to use Instruments. Run the program with allocation recording enabled in instruments, reproduce the issue, then look up the address in instruments of the double free -- it will show you the backtrace of the allocation's creation. then figure why that allocation was freed twice.
Upvotes: 1