robado eliminar desvincular cuenta contenido configuracion como borrar apple iphone

eliminar - desvincular iphone de icloud



¿Cuál es la diferencia entre KERN_INVALID_ADDRESS y KERN_PROTECTION_FAILURE? (1)

¿Cuál es la diferencia entre KERN_INVALID_ADDRESS y KERN_PROTECTION_FAILURE en iPhone OS?

Tengo dos informes de fallos de un probador beta ad hoc que están separados por 5 minutos y la principal diferencia entre ellos (aparte de la sección "Imágenes binarias:") es esta sección:

Reportar un:

Exception Type: EXC_BAD_ACCESS (SIGBUS) Exception Codes: KERN_PROTECTION_FAILURE at 0x00000008

Informe B:

Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: KERN_INVALID_ADDRESS at 0x67696c69

Por lo que vale, ambos tienen este rastro:

Thread 0 Crashed: 0 libobjc.A.dylib 0x30011940 objc_msgSend + 20 1 UIKit 0x30940174 -[UIWindow _shouldAutorotateToInterfaceOrientation:] + 60 2 UIKit 0x30a223d8 -[UIWindow _updateToInterfaceOrientation:duration:force:] + 36 3 UIKit 0x30958638 -[UIWindow _updateInterfaceOrientationFromDeviceOrientation] + 112 4 UIKit 0x30942514 -[UIWindow _handleDeviceOrientationChange:] + 72 5 Foundation 0x3054dc7a _nsnote_callback + 178 6 CoreFoundation 0x3024ea52 _CFXNotificationPostNotification + 298 7 Foundation 0x3054b854 -[NSNotificationCenter postNotificationName:object:userInfo:] + 64 8 UIKit 0x309414a4 -[UIDevice setOrientation:] + 124 9 UIKit 0x30938330 -[UIApplication handleEvent:withNewEvent:] + 5232 10 UIKit 0x30936ce8 -[UIApplication sendEvent:] + 60 11 UIKit 0x30936874 _UIApplicationHandleEvent + 4336 12 GraphicsServices 0x32046964 PurpleEventCallback + 1028 13 CoreFoundation 0x30254a70 CFRunLoopRunSpecific + 2296 14 CoreFoundation 0x30254164 CFRunLoopRunInMode + 44 15 GraphicsServices 0x3204529c GSEventRunModal + 188 16 UIKit 0x308f0374 -[UIApplication _run] + 552 17 UIKit 0x308eea8c UIApplicationMain + 960 18 MyApp 0x00015e24 0x1000 + 85540 19 MyApp 0x0000f138 0x1000 + 57656

Además, no implemento el método "shouldAutorotateToInterfaceOrientation:" en ningún lugar de mi código.


EXC_BAD_ACCESS (SIGBUS) KERN_PROTECTION_FAILURE significa que la dirección virtual es obviamente incorrecta: la mayoría de las CPU deben acceder a la memoria en un determinado límite de bytes. Debido a que su acceso a los datos aquí está alineado para un valor de 64 bits (8), debe estar intentando ejecutar una instrucción que obtiene un valor de 128 bits (como la instrucción de comparación e intercambio CMPXCHG16B ). En cualquier caso, puedes ver en el ejemplo aquí que es 0x00000008 , lo que probablemente significa que estás accediendo a un elemento de estructura que está compensado con 8 bytes desde el principio, pero tu puntero de estructura es NULL .

EXC_BAD_ACCESS (SIGSEGV) KERN_INVALID_ADDRESS significa que la dirección virtual a la que hace EXC_BAD_ACCESS (SIGSEGV) KERN_INVALID_ADDRESS no está en las tablas de páginas o no tiene acceso. Es una dirección virtual a la que no puedes acceder. Para su dirección de ejemplo, dirección 0x67696c69 , es probable que esto no sea un puntero que se haya tratado como un puntero; o su estructura de datos que contiene el puntero se liberó y se sobrescribió con otros datos.

Para su ejemplo KERN_INVALID_ADDRESS , los datos del puntero deletrean ASCII ''ilig'' (porque es poco endian). Por lo tanto, la memoria donde se almacenó el puntero probablemente se sobrescribió con algún tipo de cadena.

En ambos casos, es probable que algo sobrescribiera las estructuras de datos en su UIWindow .