阅读崩溃日志iOS

时间:2013-12-12 10:23:55

标签: objective-c xml memory-management crash

显然我的应用程序在使用实时服务器时崩溃了。当用户更改mapregion时,我正在下载XML。服务器返回边界框的数据,我的应用程序显示注释。然而,当一个地方有一个url变量设置我的应用程序只是崩溃。它甚至不会在异常断点上中断,而是直接进入main.m。

我的设备崩溃日志如下所示:

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Triggered by Thread:  0

Thread 0 Crashed:
0   libsystem_kernel.dylib          0x3b06f1fc __pthread_kill + 8
1   libsystem_pthread.dylib         0x3b0d6a4e pthread_kill + 54
2   libsystem_c.dylib               0x3b020028 abort + 72
3   libsystem_malloc.dylib          0x3b09d758 szone_error + 312
4   libsystem_malloc.dylib          0x3b09da1a free_tiny_botch + 62
5   CoreFoundation                  0x30692fd6 CFRelease + 890
6   APPName                         0x0011ef04 -[MyPlaceClass dealloc] (MyPlaceClass.mm:650)
7   APPName                         0x0011f684 -[MyTextPlace dealloc] (MyTextPlace.m:46)
8   libobjc.A.dylib                 0x3aacab06 objc_object::sidetable_release(bool) + 170
9   CoreFoundation                  0x30692e88 CFRelease + 556
10  CoreFoundation                  0x3069e3b4 -[__NSArrayM dealloc] + 156
11  libobjc.A.dylib                 0x3aacab06 objc_object::sidetable_release(bool) + 170
12  libobjc.A.dylib                 0x3aabc01e (anonymous             namespace)::AutoreleasePoolPage::pop(void*) + 354
13  CoreFoundation                  0x306961c4 _CFAutoreleasePoolPop + 12
14  UIKit                           0x32edf80c _wrapRunLoopWithAutoreleasePoolHandler + 32
15 

我检查了(MyPlaceClass.mm:650)和(MyTextPlace.m:46)。这看起来像这样:

第650行的MyPlaceClass.mm

- (void)dealloc {
    .....
    [placeURL release]; // <- This is line 650
    [super dealloc];
}

第46行的MyTextPlace.m

- (void)dealloc {
    [textContent release]; // <- This is line 46
    [super dealloc];
}

有人知道什么导致我的错误并在我的设备上崩溃了吗?我发现调试真的很难,因为我的异常断点不起作用。

1 个答案:

答案 0 :(得分:0)

placeURL已经被释放。