Glow-Inc / GLCalendarView

A fully customizable calendar view acting as a date range picker
MIT License
855 stars 106 forks source link

HockeyApp crash with GLCalendarView #23

Open jhergott opened 8 years ago

jhergott commented 8 years ago

I have a crash using GLCalendarView and it seems to be happening when [GLCalendarView scrollToDate:animated:] is called. I've never been able to reproduce, but it is consistently there in my HockeyApp reports. Any help debugging would be greatly appreciated.

Here is a log from HockeyApp.

Date/Time:       2016-03-27T09:29:22Z
Launch Time:     2016-03-27T09:27:09Z
OS Version:      iPhone OS 9.3 (13E233)
Report Version:  104

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

Application Specific Information:
Selector name found in current argument registers: indexAtPosition:

Thread 0 Crashed:
0   libobjc.A.dylib                      0x00000001820780a8 objc_retain + 8
1   UIKit                                0x0000000187babd5c -[UICollectionViewData layoutAttributesForItemAtIndexPath:] + 248
2   UIKit                                0x0000000187dbd054 -[UICollectionView scrollToItemAtIndexPath:atScrollPosition:animated:] + 256
3   MyApp                          0x00000001000db180 -[GLCalendarView scrollToDate:animated:] (GLCalendarView.m:183)
4   MyApp                          0x00000001004592b8 MyApp.CalendarPickerViewController.((updateHighlightedDateRange in _CBEC18027870F1E53F5B993CDCCE3FFD) (MyApp.CalendarPickerViewController) -> () -> ()).(closure #1) (CalendarPickerViewController.swift:169)
5   libdispatch.dylib                    0x00000001824454bc _dispatch_call_block_and_release + 20
6   libdispatch.dylib                    0x000000018244547c _dispatch_client_callout + 12
7   libdispatch.dylib                    0x000000018244ab84 _dispatch_main_queue_callback_4CF + 1840
8   CoreFoundation                       0x00000001829b0dd8 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 8
9   CoreFoundation                       0x00000001829aec40 __CFRunLoopRun + 1624
10  CoreFoundation                       0x00000001828d8d10 CFRunLoopRunSpecific + 380
11  GraphicsServices                     0x00000001841c0088 GSEventRunModal + 176
12  UIKit                                0x0000000187badf70 UIApplicationMain + 200
13  MyApp                          0x00000001000d3890 main (main.m:12)
14  ???                                  0x00000001824768b8 0x0 + 0

Thread 1:
0   libsystem_kernel.dylib               0x00000001825954d8 kevent_qos + 8
1   libdispatch.dylib                    0x0000000182447648 _dispatch_mgr_thread + 48

Thread 2:
0   libsystem_kernel.dylib               0x0000000182594b48 __workq_kernreturn + 8
1   libsystem_pthread.dylib              0x000000018265d020 start_wqthread + 0

Thread 3:
0   libsystem_kernel.dylib               0x0000000182578fd8 mach_msg_trap + 8
1   CoreFoundation                       0x00000001829b0ce8 __CFRunLoopServiceMachPort + 192
2   CoreFoundation                       0x00000001829ae9ec __CFRunLoopRun + 1028
3   CoreFoundation                       0x00000001828d8d10 CFRunLoopRunSpecific + 380
4   CFNetwork                            0x0000000183059af4 +[NSURLConnection(Loader) _resourceLoadLoop:] + 408
5   Foundation                           0x00000001833cfe1c __NSThread__start__ + 996
6   libsystem_pthread.dylib              0x000000018265fb28 _pthread_body + 152
7   libsystem_pthread.dylib              0x000000018265fa8c _pthread_start + 152
8   libsystem_pthread.dylib              0x000000018265d028 thread_start + 0

Thread 4:
0   libsystem_kernel.dylib               0x0000000182578fd8 mach_msg_trap + 8
1   CoreFoundation                       0x00000001829b0ce8 __CFRunLoopServiceMachPort + 192
2   CoreFoundation                       0x00000001829ae9ec __CFRunLoopRun + 1028
3   CoreFoundation                       0x00000001828d8d10 CFRunLoopRunSpecific + 380
4   Foundation                           0x00000001832e8d8c -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
5   Foundation                           0x000000018333dff8 -[NSRunLoop(NSRunLoop) run] + 84
6   MyApp                          0x00000001006198f0 +[GAI threadMain:] + 68
7   Foundation                           0x00000001833cfe1c __NSThread__start__ + 996
8   libsystem_pthread.dylib              0x000000018265fb28 _pthread_body + 152
9   libsystem_pthread.dylib              0x000000018265fa8c _pthread_start + 152
10  libsystem_pthread.dylib              0x000000018265d028 thread_start + 0

Thread 5:
0   libsystem_kernel.dylib               0x0000000182594344 __select + 8
1   libsystem_pthread.dylib              0x000000018265fb28 _pthread_body + 152
2   libsystem_pthread.dylib              0x000000018265fa8c _pthread_start + 152
3   libsystem_pthread.dylib              0x000000018265d028 thread_start + 0

Thread 6:
0   libsystem_kernel.dylib               0x0000000182578fd8 mach_msg_trap + 8
1   CoreFoundation                       0x00000001829b0ce8 __CFRunLoopServiceMachPort + 192
2   CoreFoundation                       0x00000001829ae9ec __CFRunLoopRun + 1028
3   CoreFoundation                       0x00000001828d8d10 CFRunLoopRunSpecific + 380
4   Foundation                           0x00000001832e8d8c -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
5   Foundation                           0x000000018333dff8 -[NSRunLoop(NSRunLoop) run] + 84
6   MyApp                          0x0000000100098684 +[AFURLConnectionOperation networkRequestThreadEntryPoint:] (AFURLConnectionOperation.m:163)
7   Foundation                           0x00000001833cfe1c __NSThread__start__ + 996
8   libsystem_pthread.dylib              0x000000018265fb28 _pthread_body + 152
9   libsystem_pthread.dylib              0x000000018265fa8c _pthread_start + 152
10  libsystem_pthread.dylib              0x000000018265d028 thread_start + 0

Thread 7:
0   libsystem_kernel.dylib               0x0000000182578fd8 mach_msg_trap + 8
1   CoreFoundation                       0x00000001829b0ce8 __CFRunLoopServiceMachPort + 192
2   CoreFoundation                       0x00000001829ae9ec __CFRunLoopRun + 1028
3   CoreFoundation                       0x00000001828d8d10 CFRunLoopRunSpecific + 380
4   GeoServices                          0x000000018956a160 _runNetworkThread + 424
5   libsystem_pthread.dylib              0x000000018265fb28 _pthread_body + 152
6   libsystem_pthread.dylib              0x000000018265fa8c _pthread_start + 152
7   libsystem_pthread.dylib              0x000000018265d028 thread_start + 0

Thread 8:
0   libsystem_kernel.dylib               0x0000000182578fd8 mach_msg_trap + 8
1   CoreFoundation                       0x00000001829b0ce8 __CFRunLoopServiceMachPort + 192
2   CoreFoundation                       0x00000001829ae9ec __CFRunLoopRun + 1028
3   CoreFoundation                       0x00000001828d8d10 CFRunLoopRunSpecific + 380
4   WebCore                              0x00000001868c2558 RunWebThread(void*) + 452
5   libsystem_pthread.dylib              0x000000018265fb28 _pthread_body + 152
6   libsystem_pthread.dylib              0x000000018265fa8c _pthread_start + 152
7   libsystem_pthread.dylib              0x000000018265d028 thread_start + 0

Thread 9:
0   libsystem_kernel.dylib               0x0000000182593f24 __psynch_cvwait + 8
1   libc++.1.dylib                       0x0000000181feb42c std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 52
2   JavaScriptCore                       0x00000001863a92cc JSC::GCThread::waitForNextPhase() + 140
3   JavaScriptCore                       0x00000001863a9364 JSC::GCThread::gcThreadMain() + 80
4   JavaScriptCore                       0x000000018607ed44 WTF::threadEntryPoint(void*) + 208
5   JavaScriptCore                       0x000000018607ec54 WTF::wtfThreadEntryPoint(void*) + 20
6   libsystem_pthread.dylib              0x000000018265fb28 _pthread_body + 152
7   libsystem_pthread.dylib              0x000000018265fa8c _pthread_start + 152
8   libsystem_pthread.dylib              0x000000018265d028 thread_start + 0

Thread 10:
0   libsystem_kernel.dylib               0x0000000182594b48 __workq_kernreturn + 8
1   libsystem_pthread.dylib              0x000000018265d020 start_wqthread + 0

Thread 11:
0   libsystem_kernel.dylib               0x0000000182594b48 __workq_kernreturn + 8
1   libsystem_pthread.dylib              0x000000018265d020 start_wqthread + 0

Thread 12:
0   libsystem_kernel.dylib               0x0000000182594b48 __workq_kernreturn + 8
1   libsystem_pthread.dylib              0x000000018265d020 start_wqthread + 0

Thread 13:
0   libsystem_kernel.dylib               0x0000000182594b48 __workq_kernreturn + 8
1   libsystem_pthread.dylib              0x000000018265d020 start_wqthread + 0
ltebean commented 8 years ago

when you call [GLCalendarView scrollToDate:animated:], are you sure that the date is between calendarView.firstDate and calendarView.lastDate?

jhergott commented 8 years ago

Yes. Even when I force the date I pass in scrollToDate: to be before calendarView.firstDate or after calendarView.lastDate I am not able to reproduce the crash.