ios - Need help interpreting a crash log from QuincyKit -


i added quincykit (a crash log reporter sits on top of plcrashreporter) app , received crash log i'm having trouble interpreting.

the crash log seems inconsistent - says thread 0 crashed, "last exception backtrace" doesn't match thread 0 callstack. last exception points table method, thread 0 callstack indicates abort occurred during quincy manager initialization.

moreover, "last exception backtrace" doesn't seem make sense taken on it's own - "caneditrowatindexpath" method doesn't include call "removeobjectatindex" @ (see below method).

can shed light onto whether or not should paying attention "last exception backtrace" or red herring, , should looking why plcrashreporter aborted during start up?

many thanks

crash log excerpt:

exception type:  sigabrt exception codes: #0 @ 0x38362df0 crashed thread:  0  application specific information: *** terminating app due uncaught exception 'nsrangeexception', reason: '*** -[__nsarraym objectatindex:]: index 7 beyond bounds [0 .. 6]'  last exception backtrace: 0   corefoundation                       0x29920fef <redacted> + 126 1   libobjc.a.dylib                      0x37d0cc8b objc_exception_throw + 38 2   corefoundation                       0x29833821 -[__nsarraym removeobjectatindex:] + 0 3   dart                                 0x000906b3 -[deliverycomplete tableview:caneditrowatindexpath:] + 262 4   uikit                                0x2d0a3c25 -[uitableview _caneditrowatindexpath:] + 60 5   uikit                                0x2d0a3a7f -[uitableview _setupcell:forediting:atindexpath:animated:updateseparators:] + 130 6   uikit                                0x2d0a1179 <redacted> + 2320 7   uikit                                0x2cf82a31 +[uiview performwithoutanimation:] + 72 8   uikit                                0x2d0a0861 -[uitableview _configurecellfordisplay:forindexpath:] + 336 9   uikit                                0x2d246383 -[uitableview _createpreparedcellforglobalrow:withindexpath:willdisplay:] + 498 10  uikit                                0x2d24642f -[uitableview _createpreparedcellforglobalrow:willdisplay:] + 54 11  uikit                                0x2d23b013 -[uitableview _updatevisiblecellsnow:isrecursive:] + 2258 12  uikit                                0x2d049657 -[uitableview layoutsubviews] + 186 13  uikit                                0x2cf73023 -[uiview layoutsublayersoflayer:] + 546 14  quartzcore                           0x2c993d99 -[calayer layoutsublayers] + 128 15  quartzcore                           0x2c98f5cd <redacted> + 360 16  quartzcore                           0x2c98f455 <redacted> + 16 17  quartzcore                           0x2c98edf1 <redacted> + 224 18  quartzcore                           0x2c98ebdf <redacted> + 434 19  uikit                                0x2cf6b23b <redacted> + 126 20  corefoundation                       0x298e6fed <redacted> + 20 21  corefoundation                       0x298e46ab <redacted> + 278 22  corefoundation                       0x298e4ab3 <redacted> + 914 23  corefoundation                       0x29831201 cfrunlooprunspecific + 476 24  corefoundation                       0x29831013 cfrunloopruninmode + 106 25  graphicsservices                     0x3100d201 gseventrunmodal + 136 26  uikit                                0x2cfd5a59 uiapplicationmain + 1440 27  dart                                 0x00015491 _mh_execute_header + 25745 28  libdyld.dylib                        0x38298aaf <redacted> + 2  thread 0 crashed: 0   libsystem_kernel.dylib               0x38362df0 __pthread_kill + 8 1   libsystem_c.dylib                    0x382fe909 abort + 76 2   dart                                 0x00122dd7 -[plcrashreporter enablecrashreporterandreturnerror:] + 1294 3   corefoundation                       0x2992131f <redacted> + 630 4   libobjc.a.dylib                      0x37d0cf13 <redacted> + 174 5   libc++abi.dylib                      0x37643de3 <redacted> + 78 6   libc++abi.dylib                      0x376438af __cxa_rethrow + 102 7   libobjc.a.dylib                      0x37d0cdd3 objc_exception_rethrow + 42 8   corefoundation                       0x2983129d cfrunlooprunspecific + 632 9   corefoundation                       0x29831013 cfrunloopruninmode + 106 10  graphicsservices                     0x3100d201 gseventrunmodal + 136 11  uikit                                0x2cfd5a59 uiapplicationmain + 1440 12  dart                                 0x00015491 _mh_execute_header + 25745 13  libdyld.dylib                        0x38298aaf <redacted> + 2 

"caneditrowatindexpath" method:

-(bool) tableview:(uitableview *)tableview caneditrowatindexpath:(nsindexpath *)indexpath {     if (tableview.tag == signer_table_tag_value)     {          routestopdata *currentstop = [currentroute singleton].selectedstop;         nsarray *signers = [currentstop signernamesforstop];          if (indexpath.row >= [signers count])         {             return no;         }          if ([[signers objectatindex:indexpath.row] isequaltostring:dark_drop_signer_string] ||             [[signers objectatindex:indexpath.row] isequaltostring:paper_invoice_signer_string] ||             [[signers objectatindex:indexpath.row] isequaltostring:add_new_signer_string]             )         {             return no;         }          return yes;     }      return no; } 

if using ios7, it's maybe uikit's fault.
tableview call delegate method before dealloc.
can add code in custom class:

- (void )dealloc{     self.tableview.datasource = nil;    self.tableview.delegate  = nil; }  

see more in ios 7 bug or bug in uialertview


Comments

Popular posts from this blog

jquery - How do you format the date used in the popover widget title of FullCalendar? -

asp.net mvc - SSO between MVCForum and Umbraco7 -

Python Tkinter keyboard using bind -