如何理解iPhone App的崩溃报告

时间:2014-08-15 01:34:30

标签: ios objective-c crash crash-reports

此iPhone应用程序将自动拨打和挂断电话。它适用于越狱设备。 挂断电话时有时会崩溃。 有什么问题,如何解决?

Exception Type:  EXC_GUARD
Exception Subtype: GUARD_TYPE_FD
Exception Message: CLOSE on file descriptor 16 (guarded with 0x08fd4dbfade2dead)
Triggered by Thread:  0

Thread 0 Crashed:
0   libsystem_kernel.dylib          0x38cdf130 __close_nocancel + 12
1   libsystem_c.dylib               0x38c4fcd5 fclose + 69
2   libCGFreetype.A.dylib           0x2e56dde5 FT::file_stream::~file_stream() + 25
3   libCGFreetype.A.dylib           0x2e56ddbb FT::file_stream::~file_stream() + 7
4   libCGFreetype.A.dylib           0x2e5730b5 destroy_face + 117
5   libCGFreetype.A.dylib           0x2e573039 FT_Done_Face + 93
6   libCGFreetype.A.dylib           0x2e5658e3 FT::face_release(FT_FaceRec_*) + 95
7   libCGFreetype.A.dylib           0x2e568f31 FT::font::~font() + 269
8   libCGFreetype.A.dylib           0x2e568e13 FT::font::~font() + 7
9   libCGFreetype.A.dylib           0x2e56fa77 (anonymous namespace)::release_private_data(void*) + 55
10  CoreGraphics                    0x2e51301f font_finalize + 27
11  CoreFoundation                  0x2e2ffe2d CFRelease + 465
12  libcache.dylib                  0x38bc321f _value_entry_remove + 139
13  libcache.dylib                  0x38bc25b3 _entry_remove + 195
14  libcache.dylib                  0x38bc2761 cache_remove_with_block + 129
15  CoreFoundation                  0x2e307fcb __CFNotificationCenterAddObserver_block_invoke + 123
16  CoreFoundation                  0x2e391e6f __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ + 11
17  CoreFoundation                  0x2e305aad _CFXNotificationPost + 1717
18  Foundation                      0x2ecebec1 -[NSNotificationCenter postNotificationName:object:userInfo:] + 69
19  UIKit                           0x30bd7e79 -[UIApplication _handleApplicationSuspend:eventInfo:] + 909
20  UIKit                           0x30b590c3 -[UIApplication handleEvent:withNewEvent:] + 771
21  UIKit                           0x30b58cf9 -[UIApplication sendEvent:] + 69
22  UIKit                           0x30bbe31d _UIApplicationHandleEvent + 661
23  GraphicsServices                0x3303876b _PurpleEventCallback + 607
24  GraphicsServices                0x33038353 PurpleEventCallback + 31
25  CoreFoundation                  0x2e39a775 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 33
26  CoreFoundation                  0x2e39a70f __CFRunLoopDoSource1 + 343
27  CoreFoundation                  0x2e398edb __CFRunLoopRun + 1403
28  CoreFoundation                  0x2e30346d CFRunLoopRunSpecific + 521
29  CoreFoundation                  0x2e30324f CFRunLoopRunInMode + 103
30  GraphicsServices                0x330372e7 GSEventRunModal + 135
31  UIKit                           0x30bb8841 UIApplicationMain + 1133
32  MyApp                           0x000f6d0d main (main.m:15)
33  libdyld.dylib                   0x38c29ab5 start + 1

1 个答案:

答案 0 :(得分:1)

看起来你有一个伪造的文件描述符,试图关闭它。地址以" fade2dead"结尾,这可能是表示释放内存的特殊值。由于我没有在堆栈跟踪中看到您的任何代码,因此可能会覆盖FreeType库使用的内存。我使用GuardMalloc或其他类似的内存工具在你的代码中查找其他内存stompers来追踪它可能是什么,因为它在上面的堆栈跟踪中并不明显。