ios app crashes for only one customer

0

One of my customers reports consistent crashing, about 75% of the times he performs a particular operation in the app. That operation involves some image processing. He's using an iPhone 4S (the same model I used when developing the app) and iOS 7.1.1. No other customer has reported this issue. He has deleted the app and reinstalled from the App Store. He's using the app's default settings. I cannot recreate the issue.

Thread 8 crashes, but does not show any lines in my code ("gCard"). The issue appears to be "doesNotRecognizeSelector:" in a thread that does not show any lines in my code. I don't understand this. (The app uses brad Larson's GPUImage but I don't know if that's a factor.)

I need help to understand the dump and suggestions on my next step.

{"name":"gCard","bug_type":"109","os_version":"iPhone OS 7.1.1 (11D201)","bundleID":"com.PFM3.Ghost-Card","version":"1.2.1 (1.2.1)","app_name":"gCard"}
Incident Identifier: E85F86F8-0F39-4E55-9EAD-48461F1EF955
CrashReporter Key:   64c031d9f1572910e1137bebea2b9be924396928
Hardware Model:      iPhone4,1
Process:             gCard [136]
Path:                /var/mobile/Applications/4E5D5D22-0202-47DE-B8B2-B9C9D90825B2/gCard.app/gCard
Identifier:          com.PFM3.Ghost-Card
Version:             1.2.1 (1.2.1)
Code Type:           ARM (Native)
Parent Process:      launchd [1]

Date/Time:           2014-06-23 00:03:18.728 -0700
OS Version:          iOS 7.1.1 (11D201)
Report Version:      104

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000001, 0x000000000000defe
Triggered by Thread:  8

Last Exception Backtrace:
0   CoreFoundation                  0x2ec27fce __exceptionPreprocess + 126
1   libobjc.A.dylib                 0x394a0cca objc_exception_throw + 34
2   CoreFoundation                  0x2ec2b962 -[NSObject(NSObject) doesNotRecognizeSelector:] + 198
3   CoreFoundation                  0x2ec2a24e ___forwarding___ + 702
4   CoreFoundation                  0x2eb797b4 _CF_forwarding_prep_0 + 20
5   UIFoundation                    0x36865a20 __NSStringDrawingEngine + 12200
6   UIFoundation                    0x368629a2 -[NSString(NSExtendedStringDrawing) drawWithRect:options:attributes:context:] + 146
7   UIKit                           0x3145cd1c -[UILabel _drawTextInRect:baselineCalculationOnly:] + 4220
8   UIKit                           0x314c3004 -[UILabel drawTextInRect:] + 496
9   UIKit                           0x314c2e06 -[UILabel drawRect:] + 74
10  UIKit                           0x314c2da0 -[UIView(CALayerDelegate) drawLayer:inContext:] + 368
11  QuartzCore                      0x310f02bc -[CALayer drawInContext:] + 96
12  QuartzCore                      0x310d9e3a CABackingStoreUpdate_ + 1850
13  QuartzCore                      0x311b4d68 ___ZN2CA5Layer8display_Ev_block_invoke + 48
14  QuartzCore                      0x310d96ee x_blame_allocations + 78
15  QuartzCore                      0x310d9396 CA::Layer::display_() + 1102
16  QuartzCore                      0x310bd038 CA::Layer::display_if_needed(CA::Transaction*) + 204
17  QuartzCore                      0x310bccd0 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 20
18  QuartzCore                      0x310bc6da CA::Context::commit_transaction(CA::Transaction*) + 226
19  QuartzCore                      0x310bc4ea CA::Transaction::commit() + 310
20  QuartzCore                      0x310e9a7e CA::Transaction::release_thread(void*) + 158
21  libsystem_pthread.dylib         0x39acb688 _pthread_tsd_cleanup + 160
22  libsystem_pthread.dylib         0x39acb406 _pthread_exit + 82
23  libsystem_pthread.dylib         0x39acabe2 _pthread_wqthread + 314
24  libsystem_pthread.dylib         0x39acaa94 start_wqthread + 4


Thread 0:
0   libsystem_kernel.dylib          0x39a50a58 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x39a50854 mach_msg + 44
2   CoreFoundation                  0x2ebf2896 __CFRunLoopServiceMachPort + 150
3   CoreFoundation                  0x2ebf1002 __CFRunLoopRun + 850
4   CoreFoundation                  0x2eb5bf0a CFRunLoopRunSpecific + 518
5   CoreFoundation                  0x2eb5bcee CFRunLoopRunInMode + 102
6   GraphicsServices                0x33ab465e GSEventRunModal + 134
7   UIKit                           0x314a7168 UIApplicationMain + 1132
8   gCard                           0x00089e12 main (main.m:16)
9   libdyld.dylib                   0x399adab4 start + 0

Thread 1:
0   libsystem_kernel.dylib          0x39a50808 kevent64 + 24
1   libdispatch.dylib               0x39992078 _dispatch_mgr_invoke + 228
2   libdispatch.dylib               0x39991dfe _dispatch_mgr_thread$VARIANT$mp + 34

Thread 2:
0   libsystem_kernel.dylib          0x39a50a58 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x39a50854 mach_msg + 44
2   CoreFoundation                  0x2ebf2896 __CFRunLoopServiceMachPort + 150
3   CoreFoundation                  0x2ebf0fbc __CFRunLoopRun + 780
4   CoreFoundation                  0x2eb5bf0a CFRunLoopRunSpecific + 518
5   CoreFoundation                  0x2eb5bcee CFRunLoopRunInMode + 102
6   Foundation                      0x2f54e1e6 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
7   Foundation                      0x2f59f09c -[NSRunLoop(NSRunLoop) run] + 76
8   gCard                           0x000cd8d4 +[AFURLConnectionOperation networkRequestThreadEntryPoint:] (AFURLConnectionOperation.m:151)
9   Foundation                      0x2f610a5a __NSThread__main__ + 1058
10  libsystem_pthread.dylib         0x39acc916 _pthread_body + 138
11  libsystem_pthread.dylib         0x39acc886 _pthread_start + 98
12  libsystem_pthread.dylib         0x39acaaa0 thread_start + 4

Thread 3:
0   libsystem_kernel.dylib          0x39a50a58 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x39a50854 mach_msg + 44
2   CoreFoundation                  0x2ebf2896 __CFRunLoopServiceMachPort + 150
3   CoreFoundation                  0x2ebf0fbc __CFRunLoopRun + 780
4   CoreFoundation                  0x2eb5bf0a CFRunLoopRunSpecific + 518
5   CoreFoundation                  0x2eb9f9fe CFRunLoopRun + 94
6   CoreMotion                      0x2f2193a8 ___lldb_unnamed_function1423$$CoreMotion + 724
7   libsystem_pthread.dylib         0x39acc916 _pthread_body + 138
8   libsystem_pthread.dylib         0x39acc886 _pthread_start + 98
9   libsystem_pthread.dylib         0x39acaaa0 thread_start + 4

Thread 4 name:  com.apple.NSURLConnectionLoader
Thread 4:
0   libsystem_kernel.dylib          0x39a50a58 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x39a50854 mach_msg + 44
2   CoreFoundation                  0x2ebf2896 __CFRunLoopServiceMachPort + 150
3   CoreFoundation                  0x2ebf0fbc __CFRunLoopRun + 780
4   CoreFoundation                  0x2eb5bf0a CFRunLoopRunSpecific + 518
5   CoreFoundation                  0x2eb5bcee CFRunLoopRunInMode + 102
6   Foundation                      0x2f59b082 +[NSURLConnection(Loader) _resourceLoadLoop:] + 314
7   Foundation                      0x2f610a5a __NSThread__main__ + 1058
8   libsystem_pthread.dylib         0x39acc916 _pthread_body + 138
9   libsystem_pthread.dylib         0x39acc886 _pthread_start + 98
10  libsystem_pthread.dylib         0x39acaaa0 thread_start + 4

Thread 5 name:  com.apple.CFSocket.private
Thread 5:
0   libsystem_kernel.dylib          0x39a63434 __select + 20
1   CoreFoundation                  0x2ebf6758 __CFSocketManager + 480
2   libsystem_pthread.dylib         0x39acc916 _pthread_body + 138
3   libsystem_pthread.dylib         0x39acc886 _pthread_start + 98
4   libsystem_pthread.dylib         0x39acaaa0 thread_start + 4

Thread 6:
0   libsystem_kernel.dylib          0x39a63c70 __workq_kernreturn + 8
1   libsystem_pthread.dylib         0x39acabda _pthread_wqthread + 306
2   libsystem_pthread.dylib         0x39acaa94 start_wqthread + 4

Thread 7:
0   libsystem_kernel.dylib          0x39a63c70 __workq_kernreturn + 8
1   libsystem_pthread.dylib         0x39acabda _pthread_wqthread + 306
2   libsystem_pthread.dylib         0x39acaa94 start_wqthread + 4

Thread 8 Crashed:
0   libsystem_c.dylib               0x39a1404e __abort + 102
1   libsystem_c.dylib               0x39a13fe4 abort + 84
2   libc++abi.dylib                 0x38d42cd2 abort_message + 70
3   libc++abi.dylib                 0x38d5b6e0 default_terminate_handler() + 248
4   libobjc.A.dylib                 0x394a0f62 _objc_terminate() + 190
5   libc++abi.dylib                 0x38d591c4 std::__terminate(void (*)()) + 76
6   libc++abi.dylib                 0x38d58a18 __cxa_throw + 112
7   libobjc.A.dylib                 0x394a0d9e objc_exception_throw + 246
8   CoreFoundation                  0x2ec2b962 -[NSObject(NSObject) doesNotRecognizeSelector:] + 198
9   CoreFoundation                  0x2ec2a24e ___forwarding___ + 702
10  CoreFoundation                  0x2eb797b4 _CF_forwarding_prep_0 + 20
11  UIFoundation                    0x36865a20 __NSStringDrawingEngine + 12200
12  UIFoundation                    0x368629a2 -[NSString(NSExtendedStringDrawing) drawWithRect:options:attributes:context:] + 146
13  UIKit                           0x3145cd1c -[UILabel _drawTextInRect:baselineCalculationOnly:] + 4220
14  UIKit                           0x314c3004 -[UILabel drawTextInRect:] + 496
15  UIKit                           0x314c2e06 -[UILabel drawRect:] + 74
16  UIKit                           0x314c2da0 -[UIView(CALayerDelegate) drawLayer:inContext:] + 368
17  QuartzCore                      0x310f02bc -[CALayer drawInContext:] + 96
18  QuartzCore                      0x310d9e3c CABackingStoreUpdate_ + 1852
19  QuartzCore                      0x311b4d68 ___ZN2CA5Layer8display_Ev_block_invoke + 48
20  QuartzCore                      0x310d96f0 x_blame_allocations + 80
21  QuartzCore                      0x310d9396 CA::Layer::display_() + 1102
22  QuartzCore                      0x310bd038 CA::Layer::display_if_needed(CA::Transaction*) + 204
23  QuartzCore                      0x310bccd0 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 20
24  QuartzCore                      0x310bc6da CA::Context::commit_transaction(CA::Transaction*) + 226
25  QuartzCore                      0x310bc4ea CA::Transaction::commit() + 310
26  QuartzCore                      0x310e9a7e CA::Transaction::release_thread(void*) + 158
27  libsystem_pthread.dylib         0x39acb68a _pthread_tsd_cleanup + 162
28  libsystem_pthread.dylib         0x39acb406 _pthread_exit + 82
29  libsystem_pthread.dylib         0x39acabe2 _pthread_wqthread + 314
30  libsystem_pthread.dylib         0x39acaa94 start_wqthread + 4

Thread 8 crashed with ARM Thread State (32-bit):
    r0: 0x00000000    r1: 0x00000000      r2: 0x00000000      r3: 0x00000001
    r4: 0x06277c84    r5: 0xffffffff      r6: 0x00000000      r7: 0x06277c94
    r8: 0x1767ed40    r9: 0x39ac7f69     r10: 0x368b94c8     r11: 0x00000000
    ip: 0x00000030    sp: 0x06277c7c      lr: 0x39a1404f      pc: 0x39a1404e
  cpsr: 0x40000030
ios
xcode
crash-reports
asked on Stack Overflow Jun 24, 2014 by Jeff

1 Answer

1

You should/must do all( or nearly all) ui specific operations on the main thread. Possibly you alter the view hierarchy in a block performed on another block.

answered on Stack Overflow Jun 24, 2014 by vikingosegundo

User contributions licensed under CC BY-SA 3.0