1

I am running into a strange crash I'm having issues debugging. My scheme has both zombies and address sanatizer enabled.

I'm getting the error:

2015-09-05 06:56:16.240 asgaard[486:110984] *** -[CFString boundingRectWithSize:options:attributes:context:]: message sent to deallocated instance 0x1897b210

which is pretty unhelpful to me as its breaking on some assembly code.

I tried the memory history command which I'm not sure is what i need and got the following output:

 thread #4294967295: tid = 0x0000, 0x00b39fb0 libclang_rt.asan_ios_dynamic.dylib`__asan_mz_malloc + 116, name = 'Memory allocated at'
    frame #0: 0x00b39fb0 libclang_rt.asan_ios_dynamic.dylib`__asan_mz_malloc + 116
    frame #1: 0x33587da6 libsystem_malloc.dylib`malloc_zone_malloc + 86
    frame #2: 0x2471f982 CoreFoundation`_CFRuntimeCreateInstance + 290
    frame #3: 0x247f3162 CoreFoundation`__CFStringCreateImmutableFunnel3 + 1718
    frame #4: 0x2473962c CoreFoundation`CFStringCreateCopy + 396
    frame #5: 0x247f33d6 CoreFoundation`_CFStringCreateWithFormatAndArgumentsAux2 + 86
    frame #6: 0x25496a70 Foundation`-[NSPlaceholderString initWithFormat:locale:arguments:] + 136
    frame #7: 0x25496972 Foundation`+[NSString stringWithFormat:] + 58
    frame #8: 0x001ef70c asgaard`-[ActiveRecordingViewController updateSpeeds](self=<unavailable>, _cmd=<unavailable>) + 836 at ActiveRecordingViewController.m:578
    frame #9: 0x001edd20 asgaard`__51-[ActiveRecordingViewController ahrswNotification:]_block_invoke(.block_descriptor=<unavailable>) + 192 at ActiveRecordingViewController.m:456
    frame #10: 0x00b38ef0 libclang_rt.asan_ios_dynamic.dylib`__wrap_dispatch_async_block_invoke + 160
    frame #11: 0x03273170 libdispatch.dylib`_dispatch_call_block_and_release + 8
    frame #12: 0x0327315c libdispatch.dylib`_dispatch_client_callout + 20
    frame #13: 0x03276e42 libdispatch.dylib`_dispatch_main_queue_callback_4CF + 1510
    frame #14: 0x247e63e6 CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 6
    frame #15: 0x247e4ae6 CoreFoundation`__CFRunLoopRun + 1510
    frame #16: 0x24730f2e CoreFoundation`CFRunLoopRunSpecific + 474
    frame #17: 0x24730d40 CoreFoundation`CFRunLoopRunInMode + 104
    frame #18: 0x2c0f91fe GraphicsServices`GSEventRunModal + 134
    frame #19: 0x27f02876 UIKit`UIApplicationMain + 1438
    frame #20: 0x00129b0a asgaard`main(argc=<unavailable>, argv=<unavailable>) + 106 at main.m:13
    frame #21: 0x33499aac libdyld.dylib`tlv_initializer + 4

I'm a little lost here exactly what this message is telling me.

frame #8: 0x001ef70c asgaard`-[ActiveRecordingViewController updateSpeeds](self=<unavailable>, _cmd=<unavailable>) + 836 at ActiveRecordingViewController.m:578

Frame 8 is a function I wrote - and it is running in an async loop on the main thread - could that somehow be connected to this error?

The actual code line is:

 578: [self coreGroundSpeed].text = [NSString stringWithFormat:@"%d Kts", coreSpd];

Any suggestions where/what to look at?

Jeef
  • 26,861
  • 21
  • 78
  • 156
  • I hope you have made sure to set text in main thread and not from async thread. – Puneet Sharma Sep 05 '15 at 11:16
  • 1
    It should be inside ` dispatch_async(dispatch_get_main_queue(), ^{ ` but i'll look closer – Jeef Sep 05 '15 at 11:17
  • What is coreSpd here? Make sure its value is not getting nil in runtime. It should be an Int value. You can debug and check. Also, if coreSpd variable is defined outside dispatch block, make it a block variable. – Puneet Sharma Sep 05 '15 at 11:25

0 Answers0