2012-02-09 21 views
5

Tengo la siguiente falla que no puedo replicar a pedido, pero sucede lo suficiente como para que los usuarios la noten.Llegar al final de la falla

Este informe de fallos ha sido simbolizado también. ¿Cómo descubrirías la causa? Esto solo parece suceder en 4.1

Exception Type: SIGSEGV 
Exception Codes: SEGV_ACCERR at 0x9f069184 
Crashed Thread: 0 

Thread 0 Crashed: 
0 libobjc.A.dylib      0x000027d8 objc_msgSend + 16 
1 CoreFoundation      0x0007d749 ____CFXNotificationPost_old_block_invoke_1 + 45 
2 libSystem.B.dylib     0x000d5984 _dispatch_call_block_and_release + 20 
3 libSystem.B.dylib     0x000d66b0 _dispatch_continuation_pop + 72 
4 libSystem.B.dylib     0x000d69fc _dispatch_main_queue_callback_4CF + 220 
5 CoreFoundation      0x0002789b __CFRunLoopRun + 1335 
6 CoreFoundation      0x00027277 CFRunLoopRunSpecific + 231 
7 CoreFoundation      0x0002717f CFRunLoopRunInMode + 59 
8 GraphicsServices     0x000045f3 GSEventRunModal + 115 
9 GraphicsServices     0x0000469f GSEventRun + 63 
10 UIKit        0x00004123 -[UIApplication _run] + 403 
11 UIKit        0x0000212f UIApplicationMain + 671 
12 MyApp        0x000024e3 main (main.m:17) 

Desde entonces he logrado obtener un poco más de información, pero no mucho.

2012-02-12 18:03:04.556 MyApp[462:307] (null): unrecognized selector sent to class 0x3e0a360c 
2012-02-12 18:03:04.618 MyApp[462:307] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '(null): unrecognized selector sent to class 0x3e0a360c' 
*** Call stack at first throw: 
(
    0 CoreFoundation      0x33506ed3 __exceptionPreprocess + 114 
    1 libobjc.A.dylib      0x30412811 objc_exception_throw + 24 
    2 CoreFoundation      0x335086ff +[NSObject(NSObject) doesNotRecognizeSelector:] + 102 
    3 CoreFoundation      0x334b01d9 ___forwarding___ + 508 
    4 CoreFoundation      0x334aff90 _CF_forwarding_prep_0 + 48 
    5 Foundation       0x302a86b3 _nsnote_callback + 142 
    6 CoreFoundation      0x334e4749 ____CFXNotificationPost_old_block_invoke_1 + 44 
    7 libSystem.B.dylib     0x31d05984 _dispatch_call_block_and_release + 20 
    8 libSystem.B.dylib     0x31d066b0 _dispatch_continuation_pop + 72 
    9 libSystem.B.dylib     0x31d069fc _dispatch_main_queue_callback_4CF + 220 
    10 CoreFoundation      0x3348e89b __CFRunLoopRun + 1334 
    11 CoreFoundation      0x3348e277 CFRunLoopRunSpecific + 230 
    12 CoreFoundation      0x3348e17f CFRunLoopRunInMode + 58 
    13 GraphicsServices     0x31b5e5f3 GSEventRunModal + 114 
    14 GraphicsServices     0x31b5e69f GSEventRun + 62 
    15 UIKit        0x341bd123 -[UIApplication _run] + 402 
    16 UIKit        0x341bb12f UIApplicationMain + 670 

Ahora todos mis addObservers son bloques basados ​​así que no puedo ver por qué se llevaría a un selector no reconocido.

+0

No sé, entonces no estoy publicando una respuesta, pero parece que está intentando invocar un bloque que ya ha sido lanzado? – Jasarien

+1

No estoy seguro de si este es el motivo, pero verificaría si estaba eliminando objetos como observadores (en 'NSNotificationCenter') antes de desmantelar. –

+0

¿Tu bloqueo solo se debe a NSNotification, seguro? Trata de comentar ese código y ejecutarlo. – Mrunal

Respuesta

2

De esta manera no nos ayudará mucho mientras se bloquea la depuración. Encontré una de las mejores maneras de depurar el código de Crash. Sigue el enlace para la técnica de depuración:

http://cocoadev.com/DebuggingAutorelease

es necesario analizar su consola con mucho cuidado para ver realmente por qué se produce el accidente. Esto me ayudó en casi todo el código que están sin ARC activado ...

Hope esto podría ayudarle ....

nJoy de codificación ... :)

+0

¡Gracias, esto ayudó mucho! –

+0

Bienvenido en cualquier momento .... :) – DShah

+0

El enlace no se encuentra. – trojanfoe

Cuestiones relacionadas