MKCalloutBasedAnnotationCalloutController exception

Originator:futuretap
Number:rdar://14746786 Date Originated:15-Aug-2013 06:33 PM
Status:Closed/Insufficient information Resolved:
Product:iOS SDK Product Version:7.0 beta 5
Classification:Exception Reproducible:Sometimes
 
In my MapKit based application, I occasionally see this crash. Compiled using Xcode 4.6.3 (intentionally not with Xcode 5 beta because the app isn't  yet iOS 7 ready). The crash happens when tapping the detail disclosure button of a MKMapView callout which pushes a new view controller on the stack (detail view).

(lldb) po $r0
$0 = 342136400 [<MKCalloutBasedAnnotationCalloutController 0x1ba4edc0> valueForUndefinedKey:]: this class is not key value coding-compliant for the key popoverController.
(lldb) bt
* thread #1: tid = 0x148dd, 0x397d66a0 libobjc.A.dylib`objc_exception_throw, stop reason = breakpoint 52.1 53.1
    frame #0: 0x397d66a0 libobjc.A.dylib`objc_exception_throw
    frame #1: 0x2f7adbd8 CoreFoundation`-[NSException raise] + 8
    frame #2: 0x3014b4be Foundation`-[NSObject(NSKeyValueCoding) valueForUndefinedKey:] + 262
    frame #3: 0x300b0638 Foundation`-[NSObject(NSKeyValueCoding) valueForKey:] + 200
    frame #4: 0x326d8650 AccessibilityUtilities`-[NSObject(UIAccessibilitySafeCategory) safeValueForKey:] + 104
    frame #5: 0x03012826 MapKitFramework
    frame #6: 0x030127a8 MapKitFramework
    frame #7: 0x39cd7102 libdispatch.dylib`_dispatch_call_block_and_release + 10
    frame #8: 0x39cdba4e libdispatch.dylib`_dispatch_after_timer_callback + 50
    frame #9: 0x39cd70ee libdispatch.dylib`_dispatch_client_callout + 22
    frame #10: 0x39cd874e libdispatch.dylib`_dispatch_source_invoke + 262
    frame #11: 0x39cd9958 libdispatch.dylib`_dispatch_main_queue_callback_4CF + 188
    frame #12: 0x2f7785b8 CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 8
    frame #13: 0x2f776e84 CoreFoundation`__CFRunLoopRun + 1308
    frame #14: 0x2f6e1540 CoreFoundation`CFRunLoopRunSpecific + 524
    frame #15: 0x2f6e1322 CoreFoundation`CFRunLoopRunInMode + 106
    frame #16: 0x34175342 GraphicsServices`GSEventRunModal + 138
    frame #17: 0x31cfa8a4 UIKit`UIApplicationMain + 1136
    frame #18: 0x0009662e WhereTo`main(argc=1, argv=0x27d6cc58) + 74 at main.m:16



Ortwin Gentz, 19-Sep-2013 10:55 PM

It's not actually a crash but a caught (by MapKit?) exception. So it only occurs if break on exceptions is turned on. Nevertheless this should be fixed.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!