Quantcast

indexPath.Row in UITableViewSource Get Cell crash the app

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

indexPath.Row in UITableViewSource Get Cell crash the app

gabriel_morales
Hi I have a crash in the GetCell method in a custom UITableViewSource using de .dsym and the .crash files I get that error is lunched in the var item = tableItems [indexPath.Row]; instruction, the error is happening when I scroll to fast the UITableView
this is my test code

public override UITableViewCell GetCell (UITableView tableView, NSIndexPath indexPath)
                {
                        Console.WriteLine ("Here 1 ");
                        var cell = tableView.DequeueReusableCell ("contactCellID") as ICTableContactCell;
                        Console.WriteLine ("Here 1/2");
                        Console.WriteLine ("Here 2 "+(tableItems==null));
                        Console.WriteLine ("Here 2 "+(tableItems.Count));
                        Console.WriteLine ("Here 2 "+(indexPath==null));
                        Console.WriteLine ("Here 2 "+(indexPath.Row));
                        Console.WriteLine ("Here 2 "+(tableItems.Count)+" - "+(indexPath==null)+" "+(indexPath.Row));
                        var item = tableItems [indexPath.Row];
                        item.index = indexPath.Row;
                        if (cell == null) {
                                cell = new ICTableContactCell (item, new NSString ("contactCellID"));
                        }
                        cell.UpdateCell (item);

                        return cell;
                }

this the Xcode console output
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 1
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 1/2
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 False
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 659
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 False
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 644
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 659 - False 644
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 1
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 1/2
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 False
Feb 27 20:18:20 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 659
Feb 27 20:18:20 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 False
Feb 27 20:18:20 Developers-iPod CardReader_iOS[1767] <Error>: Stacktrace:

this is the symbolicate crash
Date/Time:           2014-02-27 20:18:20.064 -0400
OS Version:          iOS 7.0.4 (11B554a)
Report Version:      104

Exception Type:  EXC_BAD_ACCESS (SIGABRT)
Exception Subtype: KERN_INVALID_ADDRESS at 0x00000000
Triggered by Thread:  0

Thread 0 Crashed:
0   libsystem_kernel.dylib         0x3a15d1fc __pthread_kill + 8
1   libsystem_pthread.dylib       0x3a1c6a2e pthread_kill + 54
2   libsystem_c.dylib             0x3a10dff8 abort + 72
3   CardReader_iOS                 0x002f2674 mono_handle_native_sigsegv (mini-exceptions.c:2335)
4   CardReader_iOS                 0x002fb508 mono_sigsegv_signal_handler (mini.c:6744)
5   libsystem_platform.dylib       0x3a1c1060 _sigtramp + 40
6   CardReader_iOS                 0x00049b7c CardReader_iOS.ICTableContactSource:GetCell + 476
7   CardReader_iOS                 0x001b8c50 ___lldb_unnamed_function9222$$CardReader_iOS + 196
8   CardReader_iOS                 0x002fd5e4 mono_jit_runtime_invoke (mini.c:6610)
9   CardReader_iOS                 0x00337b3a mono_runtime_invoke (object.c:2827)
10  CardReader_iOS                 0x002ce1ca native_to_managed_trampoline_CardReader_iOS_ICTableContactSource_GetCell (registrar.m:828)
11  UIKit                         0x3212ea56 -[UITableView _createPreparedCellForGlobalRow:withIndexPath:] + 406
12  UIKit                         0x320d6e78 -[UITableView _updateVisibleCellsNow:] + 1800
13  UIKit                         0x320d6694 -[UITableView layoutSubviews] + 180
14  UIKit                         0x31ffcd9e -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 342
15  QuartzCore                     0x31c83c66 -[CALayer layoutSublayers] + 138
16  QuartzCore                     0x31c7f476 CA::Layer::layout_if_needed(CA::Transaction*) + 346
17  QuartzCore                     0x31c7f308 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 12
18  QuartzCore                     0x31c7ed1a CA::Context::commit_transaction(CA::Transaction*) + 226
19  QuartzCore                     0x31c7eb2a CA::Transaction::commit() + 310
20  QuartzCore                     0x31cd3820 CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long) + 512
21  IOMobileFramebuffer           0x348c976a IOMobileFramebufferVsyncNotifyFunc + 102
22  IOKit                         0x3056ba72 IODispatchCalloutFromCFMessage + 246
23  CoreFoundation                 0x2f849e1e __CFMachPortPerform + 134
24  CoreFoundation                 0x2f8549dc __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 32
25  CoreFoundation                 0x2f854976 __CFRunLoopDoSource1 + 342
26  CoreFoundation                 0x2f85314a __CFRunLoopRun + 1394
27  CoreFoundation                 0x2f7bdc22 CFRunLoopRunSpecific + 518
28  CoreFoundation                 0x2f7bda06 CFRunLoopRunInMode + 102
29  GraphicsServices               0x344ad27e GSEventRunModal + 134
30  UIKit                         0x32061044 UIApplicationMain + 1132
31  CardReader_iOS                 0x000ac868 (wrapper managed-to-native) MonoTouch.UIKit.UIApplication:UIApplicationMain + 268
32  CardReader_iOS                 0x00088a94 MonoTouch.UIKit.UIApplication:Main (.pmcs-compat.UIApplication.cs:75)
33  CardReader_iOS                 0x0003a05c CardReader_iOS.Application:Main + 44
34  CardReader_iOS                 0x001b8c50 ___lldb_unnamed_function9222$$CardReader_iOS + 196
35  CardReader_iOS                 0x002fd5e4 mono_jit_runtime_invoke (mini.c:6610)
36  CardReader_iOS                 0x00337b3a mono_runtime_invoke (object.c:2827)
37  CardReader_iOS                 0x0033b6c0 mono_runtime_exec_main (object.c:4052)
38  CardReader_iOS                 0x0033b510 mono_runtime_run_main (object.c:3678)
39  CardReader_iOS                 0x002ebdac mono_jit_exec (driver.g.c:1009)
40  CardReader_iOS                 0x0036e060 main (main.m:489)
41  libdyld.dylib                 0x3a0a6ab4 start + 0
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: indexPath.Row in UITableViewSource Get Cell crash the app

Sebastien Pouliot
Hello Gabriel,

A partial crash report, without all symbols, is hard to decipher. It's also a bit hard to guess what going on outside the code you provided or the condition under which it's executed (e.g. how many cells).

Could you file a bug report along with a self-contained test case ?

Thanks
Sebastien


On Thu, Feb 27, 2014 at 7:26 PM, gabriel_morales <[hidden email]> wrote:
Hi I have a crash in the GetCell method in a custom UITableViewSource using
de .dsym and the .crash files I get that error is lunched in the var item =
tableItems [indexPath.Row]; instruction, the error is happening when I
scroll to fast the UITableView
this is my test code

public override UITableViewCell GetCell (UITableView tableView, NSIndexPath
indexPath)
                {
                        Console.WriteLine ("Here 1 ");
                        var cell = tableView.DequeueReusableCell ("contactCellID") as
ICTableContactCell;
                        Console.WriteLine ("Here 1/2");
                        Console.WriteLine ("Here 2 "+(tableItems==null));
                        Console.WriteLine ("Here 2 "+(tableItems.Count));
                        Console.WriteLine ("Here 2 "+(indexPath==null));
                        Console.WriteLine ("Here 2 "+(indexPath.Row));
                        Console.WriteLine ("Here 2 "+(tableItems.Count)+" - "+(indexPath==null)+"
"+(indexPath.Row));
                        var item = tableItems [indexPath.Row];
                        item.index = indexPath.Row;
                        if (cell == null) {
                                cell = new ICTableContactCell (item, new NSString ("contactCellID"));
                        }
                        cell.UpdateCell (item);

                        return cell;
                }

this the Xcode console output
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 1
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 1/2
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 False
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 659
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 False
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 644
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 659 -
False 644
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 1
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 1/2
Feb 27 20:18:19 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 False
Feb 27 20:18:20 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 659
Feb 27 20:18:20 Developers-iPod CardReader_iOS[1767] <Warning>: here 2 False
Feb 27 20:18:20 Developers-iPod CardReader_iOS[1767] <Error>: Stacktrace:

this is the symbolicate crash
Date/Time:           2014-02-27 20:18:20.064 -0400
OS Version:          iOS 7.0.4 (11B554a)
Report Version:      104

Exception Type:  EXC_BAD_ACCESS (SIGABRT)
Exception Subtype: KERN_INVALID_ADDRESS at 0x00000000
Triggered by Thread:  0

Thread 0 Crashed:
0   libsystem_kernel.dylib              0x3a15d1fc __pthread_kill + 8
1   libsystem_pthread.dylib             0x3a1c6a2e pthread_kill + 54
2   libsystem_c.dylib                   0x3a10dff8 abort + 72
3   CardReader_iOS                      0x002f2674 mono_handle_native_sigsegv
(mini-exceptions.c:2335)
4   CardReader_iOS                      0x002fb508 mono_sigsegv_signal_handler
(mini.c:6744)
5   libsystem_platform.dylib            0x3a1c1060 _sigtramp + 40
6   CardReader_iOS                      0x00049b7c
CardReader_iOS.ICTableContactSource:GetCell + 476
7   CardReader_iOS                      0x001b8c50
___lldb_unnamed_function9222$$CardReader_iOS + 196
8   CardReader_iOS                      0x002fd5e4 mono_jit_runtime_invoke
(mini.c:6610)
9   CardReader_iOS                      0x00337b3a mono_runtime_invoke
(object.c:2827)
10  CardReader_iOS                      0x002ce1ca
native_to_managed_trampoline_CardReader_iOS_ICTableContactSource_GetCell
(registrar.m:828)
11  UIKit                               0x3212ea56 -[UITableView
_createPreparedCellForGlobalRow:withIndexPath:] + 406
12  UIKit                               0x320d6e78 -[UITableView
_updateVisibleCellsNow:] + 1800
13  UIKit                               0x320d6694 -[UITableView layoutSubviews]
+ 180
14  UIKit                               0x31ffcd9e -[UIView(CALayerDelegate)
layoutSublayersOfLayer:] + 342
15  QuartzCore                          0x31c83c66 -[CALayer layoutSublayers] +
138
16  QuartzCore                          0x31c7f476
CA::Layer::layout_if_needed(CA::Transaction*) + 346
17  QuartzCore                          0x31c7f308
CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 12
18  QuartzCore                          0x31c7ed1a
CA::Context::commit_transaction(CA::Transaction*) + 226
19  QuartzCore                          0x31c7eb2a CA::Transaction::commit() +
310
20  QuartzCore                          0x31cd3820
CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long
long, unsigned long long) + 512
21  IOMobileFramebuffer                 0x348c976a
IOMobileFramebufferVsyncNotifyFunc + 102
22  IOKit                               0x3056ba72 IODispatchCalloutFromCFMessage
+ 246
23  CoreFoundation                      0x2f849e1e __CFMachPortPerform + 134
24  CoreFoundation                      0x2f8549dc
__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 32
25  CoreFoundation                      0x2f854976 __CFRunLoopDoSource1 + 342
26  CoreFoundation                      0x2f85314a __CFRunLoopRun + 1394
27  CoreFoundation                      0x2f7bdc22 CFRunLoopRunSpecific + 518
28  CoreFoundation                      0x2f7bda06 CFRunLoopRunInMode + 102
29  GraphicsServices                    0x344ad27e GSEventRunModal + 134
30  UIKit                               0x32061044 UIApplicationMain + 1132
31  CardReader_iOS                      0x000ac868 (wrapper managed-to-native)
MonoTouch.UIKit.UIApplication:UIApplicationMain + 268
32  CardReader_iOS                      0x00088a94
MonoTouch.UIKit.UIApplication:Main (.pmcs-compat.UIApplication.cs:75)
33  CardReader_iOS                      0x0003a05c
CardReader_iOS.Application:Main + 44
34  CardReader_iOS                      0x001b8c50
___lldb_unnamed_function9222$$CardReader_iOS + 196
35  CardReader_iOS                      0x002fd5e4 mono_jit_runtime_invoke
(mini.c:6610)
36  CardReader_iOS                      0x00337b3a mono_runtime_invoke
(object.c:2827)
37  CardReader_iOS                      0x0033b6c0 mono_runtime_exec_main
(object.c:4052)
38  CardReader_iOS                      0x0033b510 mono_runtime_run_main
(object.c:3678)
39  CardReader_iOS                      0x002ebdac mono_jit_exec
(driver.g.c:1009)
40  CardReader_iOS                      0x0036e060 main (main.m:489)
41  libdyld.dylib                       0x3a0a6ab4 start + 0



--
View this message in context: http://monotouch.2284126.n4.nabble.com/indexPath-Row-in-UITableViewSource-Get-Cell-crash-the-app-tp4658552.html
Sent from the MonoTouch mailing list archive at Nabble.com.
_______________________________________________
MonoTouch mailing list
[hidden email]
http://lists.ximian.com/mailman/listinfo/monotouch


_______________________________________________
MonoTouch mailing list
[hidden email]
http://lists.ximian.com/mailman/listinfo/monotouch
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: indexPath.Row in UITableViewSource Get Cell crash the app

gabriel_morales
Hi sorry isn't a great description after multiple test I found that NSIndexPath in crash it's an NSActionDispatcher, this error it's only happen in iOS 7,  so I'm controlling that and replacing value with the last working index, this solved my problem
Loading...