I am having a big problem figuring out where my app crash is being caused, and I’m not sure how to interpret the crash report.
The crash clearly occurs in Thread 0, but at what step might it actually be crashing in? I certainly am not manipulating CALayers in my code at all. In anyone experience, does this happen for any particular reason?
Incident Identifier: 23D06670-4C44-49F4-A0CB-01CF95D558D2
CrashReporter Key: 1d7775167d5336b2369c148ce37405638a6abe74
Hardware Model: iPhone3,1
Process: CrazyTimes [3169]
Path: /var/mobile/Applications/41DF0A05-710D-48BB-A468-73B7B224F5A3/CrazyTimes.app/CrazyTimes
Identifier: CrazyTimes
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]
Date/Time: 2012-02-09 18:22:36.422 -0500
OS Version: iPhone OS 5.0 (9A334)
Report Version: 104
Exception Type: EXC_BAD_ACCESS (SIGBUS)
Exception Codes: KERN_PROTECTION_FAILURE at 0x00600ad0
Crashed Thread: 0
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libobjc.A.dylib 0x383a7fca objc_msgSend + 30
1 CrazyTimes 0x00114460 0x1000 + 1127520
2 CrazyTimes 0x000c2f10 0x1000 + 794384
3 UIKit 0x331b0f72 -[UIView(CALayerDelegate) drawLayer:inContext:] + 270
4 QuartzCore 0x328c0e16 -[CALayer drawInContext:] + 110
5 QuartzCore 0x328c0418 CABackingStoreUpdate_ + 1776
6 QuartzCore 0x328bfc16 CA::Layer::display_() + 966
7 QuartzCore 0x328bf832 CA::Layer::display() + 122
8 QuartzCore 0x328bf774 CA::Layer::display_if_needed(CA::Transaction*) + 168
9 QuartzCore 0x328bf11c CA::Context::commit_transaction(CA::Transaction*) + 228
10 QuartzCore 0x328bee50 CA::Transaction::commit() + 308
11 QuartzCore 0x328b6d7e CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 50
12 CoreFoundation 0x311dcb44 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 12
13 CoreFoundation 0x311dad80 __CFRunLoopDoObservers + 252
14 CoreFoundation 0x311db0da __CFRunLoopRun + 754
15 CoreFoundation 0x3115e4d6 CFRunLoopRunSpecific + 294
16 CoreFoundation 0x3115e39e CFRunLoopRunInMode + 98
17 GraphicsServices 0x33d8cfe6 GSEventRunModal + 150
18 UIKit 0x331d073c UIApplicationMain + 1084
19 CrazyTimes 0x00004084 0x1000 + 12420
20 CrazyTimes 0x00003af8 0x1000 + 11000
Thread 1 name: Dispatch queue: com.apple.libdispatch-manager
Thread 1:
0 libsystem_kernel.dylib 0x324dd3b4 kevent + 24
1 libdispatch.dylib 0x32c31e78 _dispatch_mgr_invoke + 708
2 libdispatch.dylib 0x32c31b96 _dispatch_mgr_thread + 30
Thread 2 name: WebThread
Thread 2:
0 libsystem_kernel.dylib 0x324dd010 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x324dd206 mach_msg + 50
2 CoreFoundation 0x311dc41c __CFRunLoopServiceMachPort + 120
3 CoreFoundation 0x311db154 __CFRunLoopRun + 876
4 CoreFoundation 0x3115e4d6 CFRunLoopRunSpecific + 294
5 CoreFoundation 0x3115e39e CFRunLoopRunInMode + 98
6 WebCore 0x379f2128 _ZL12RunWebThreadPv + 396
7 libsystem_c.dylib 0x369a5c16 _pthread_start + 314
8 libsystem_c.dylib 0x369a5ad0 thread_start + 0
Thread 3:
0 libsystem_kernel.dylib 0x324edcd4 __workq_kernreturn + 8
1 libsystem_c.dylib 0x369a030a _pthread_wqthread + 610
2 libsystem_c.dylib 0x369a009c start_wqthread + 0
Thread 4 name: com.apple.NSURLConnectionLoader
Thread 4:
0 libsystem_kernel.dylib 0x324dd010 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x324dd206 mach_msg + 50
2 CoreFoundation 0x311dc41c __CFRunLoopServiceMachPort + 120
3 CoreFoundation 0x311db154 __CFRunLoopRun + 876
4 CoreFoundation 0x3115e4d6 CFRunLoopRunSpecific + 294
5 CoreFoundation 0x3115e39e CFRunLoopRunInMode + 98
6 Foundation 0x3821abc2 +[NSURLConnection(Loader) _resourceLoadLoop:] + 302
7 Foundation 0x3821aa8a -[NSThread main] + 66
8 Foundation 0x382ae59a __NSThread__main__ + 1042
9 libsystem_c.dylib 0x369a5c16 _pthread_start + 314
10 libsystem_c.dylib 0x369a5ad0 thread_start + 0
Thread 5 name: com.apple.CFSocket.private
Thread 5:
0 libsystem_kernel.dylib 0x324ed570 __select + 20
1 CoreFoundation 0x311e066a __CFSocketManager + 726
2 libsystem_c.dylib 0x369a5c16 _pthread_start + 314
3 libsystem_c.dylib 0x369a5ad0 thread_start + 0
Thread 6:
0 libsystem_kernel.dylib 0x324edcd4 __workq_kernreturn + 8
1 libsystem_c.dylib 0x369a030a _pthread_wqthread + 610
2 libsystem_c.dylib 0x369a009c start_wqthread + 0
Thread 7 name: WebCore: CFNetwork Loader
Thread 7:
0 libsystem_kernel.dylib 0x324dd010 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x324dd206 mach_msg + 50
2 CoreFoundation 0x311dc41c __CFRunLoopServiceMachPort + 120
3 CoreFoundation 0x311db154 __CFRunLoopRun + 876
4 CoreFoundation 0x3115e4d6 CFRunLoopRunSpecific + 294
5 CoreFoundation 0x3115e39e CFRunLoopRunInMode + 98
6 WebCore 0x37a1b69e _ZN7WebCoreL15runLoaderThreadEPv + 122
7 libsystem_c.dylib 0x369a5c16 _pthread_start + 314
8 libsystem_c.dylib 0x369a5ad0 thread_start + 0
Thread 8 name: WebCore: LocalStorage
Thread 8:
0 libsystem_kernel.dylib 0x324ed068 __psynch_cvwait + 24
1 libsystem_c.dylib 0x369a5f2e _pthread_cond_wait + 634
2 libsystem_c.dylib 0x369a5caa pthread_cond_wait + 34
3 JavaScriptCore 0x3768940e WTF::ThreadCondition::timedWait(WTF::Mutex&, double) + 54
4 WebCore 0x37b51494 WTF::PassOwnPtr<WebCore::LocalStorageTask> WTF::MessageQueue<WebCore::LocalStorageTask>::waitForMessageFilteredWithTimeout<bool ()(WebCore::LocalStorageTask*)>(WTF::MessageQueueWaitResult&, bool (&)(WebCore::LocalStorageTask*), double) + 52
5 WebCore 0x37b5144a WebCore::LocalStorageThread::threadEntryPointCallback(void*) + 106
6 libsystem_c.dylib 0x369a5c16 _pthread_start + 314
7 libsystem_c.dylib 0x369a5ad0 thread_start + 0
Thread 9:
0 libsystem_kernel.dylib 0x324dd010 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x324dd206 mach_msg + 50
2 CoreFoundation 0x311dc41c __CFRunLoopServiceMachPort + 120
3 CoreFoundation 0x311db154 __CFRunLoopRun + 876
4 CoreFoundation 0x3115e4d6 CFRunLoopRunSpecific + 294
5 CoreFoundation 0x311db474 CFRunLoopRun + 92
6 CrazyTimes 0x00039ee4 0x1000 + 233188
7 Foundation 0x3821aa8a -[NSThread main] + 66
8 Foundation 0x382ae59a __NSThread__main__ + 1042
9 libsystem_c.dylib 0x369a5c16 _pthread_start + 314
10 libsystem_c.dylib 0x369a5ad0 thread_start + 0
Thread 10 name: com.apple.coremedia.player.async
Thread 10:
0 libsystem_kernel.dylib 0x324ed068 __psynch_cvwait + 24
1 libsystem_c.dylib 0x369a5f2e _pthread_cond_wait + 634
2 libsystem_c.dylib 0x369a5caa pthread_cond_wait + 34
3 CoreMedia 0x3255d000 FigSemaphoreWaitRelative + 212
4 MediaToolbox 0x3261afca fpa_AsyncMovieControlThread + 18
5 CoreMedia 0x3257cbc6 figThreadMain + 146
6 libsystem_c.dylib 0x369a5c16 _pthread_start + 314
7 libsystem_c.dylib 0x369a5ad0 thread_start + 0
Thread 11:
0 libsystem_kernel.dylib 0x324edcd4 __workq_kernreturn + 8
1 libsystem_c.dylib 0x369a030a _pthread_wqthread + 610
2 libsystem_c.dylib 0x369a009c start_wqthread + 0
Thread 0 crashed with ARM Thread State:
r0: 0x09b99000 r1: 0x345621e3 r2: 0x0019e7dc r3: 0x0019e910
r4: 0x0019e800 r5: 0x09b99000 r6: 0x00199f3c r7: 0x2fdfdb00
r8: 0x00196f94 r9: 0x00118870 r10: 0x00196bdc r11: 0x0019789c
ip: 0x0019e8f4 sp: 0x2fdfdae0 lr: 0x00114467 pc: 0x383a7fca
cpsr: 0x20080030
UIViewsare implemented withCALayers, so if you are using UIKit, you are using layers. My guess is that an already released object is receiving messages. Maybe you released an object more times than you should. Try recompiling withNSZombieEnabled.