Hi Rolf, Sebastien
Thank you for your answers.
I have downloaded MonoTouch 5.4 and I have caught the cases where I was
doing this.
My only question with this is do you know why I could not reproduce
these crashes? Is this problem something that should normally crash
every time or is there something else that has caused the app to crash
because of this?
Thanks
Liam
On 07/09/12 12:51, Sebastien Pouliot wrote:
Hello Liam,
On Thu, Sep 6, 2012 at 7:53 PM, Liam Houlahan<[email protected]> wrote:
Hi Everyone
I have submitted an app to the appstore and it has been rejected because it
crashes.
The description of when the app crashes by apple is vague and I cannot
reproduce the crash.
I have uploaded the symbolicated crash logs too google docs hoping that you
guys may be able to make out what is going on?
Here is the link
https://docs.google.com/folder/d/0B5ghoqfnILgZOWlqRFRQUUxYZlE/edit
The problem with the crash logs is that there is not a reference to any of
my code in the thread which crashed. I have not seen this before. Normally
when my apps have crashed the crash log will show under the thread that
crashed a reference to some lines of code which are written by me. It looks
to me that the crash is occurring in mono but I cannot be sure of this.
From a quick look at your first file it seems your application is
crashing on thread #12...
Crashed Thread: 12
... while reloading a UITableView.
Thread 12 Crashed:
0 libsystem_c.dylib 0x3221334a __abort + 138
1 libsystem_c.dylib 0x322132ba abort + 122
2 AppMonoTouch 0x00552ffe monoeg_g_logv (goutput.c:128)
3 AppMonoTouch 0x00553020 monoeg_assertion_message
(goutput.c:152)
4 AppMonoTouch 0x004b0a96 mono_thread_abort (mini.c:2639)
5 AppMonoTouch 0x004b0b00 mono_thread_abort_dummy
(mini.c:2716)
6 AppMonoTouch 0x004bfcd0 0x1000 + 4975824
7 AppMonoTouch 0x004bfd9e mono_handle_exception
(mini-exceptions.c:1828)
8 AppMonoTouch 0x004d57fe handle_signal_exception
(exceptions-arm.c:532)
9 AppMonoTouch 0x004000f0
wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr
(mscorlib.dll.7.s:159594)
10 AppMonoTouch 0x004000f0
wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr
(mscorlib.dll.7.s:159594)
11 AppMonoTouch 0x004b2858 mono_jit_runtime_invoke
(mini.c:5786)
12 AppMonoTouch 0x00522580 mono_runtime_invoke (object.c:2758)
13 AppMonoTouch 0x00562d00 monotouch_trampoline
(monotouch-glue.m:808)
14 UIKit 0x3537568c -[UISectionRowData
refreshWithSection:tableView:tableViewRowData:] + 1484
15 UIKit 0x353769e6 -[UITableViewRowData
numberOfRows] + 102
16 UIKit 0x35376938 -[UITableView
noteNumberOfRowsChanged] + 112
17 UIKit 0x35376514 -[UITableView reloadData] + 724
18 UIKit 0x353837d8 -[UITableView
_reloadDataIfNeeded] + 60
19 UIKit 0x353836a8 -[UITableView layoutSubviews] + 20
20 UIKit 0x35327f0e -[UIView(CALayerDelegate)
layoutSublayersOfLayer:] + 142
Now UIKit is *not* thread-safe and _must_ be used from the main thread...
Thread 0 name: Dispatch queue: com.apple.main-thread
... which is thread #0 (not #12).
This is likely the is the root cause of your crash(es). You should try
MonoTouch 5.4 since it will (by default, for Debug builds) warns you
(throw exceptions) if you use UIKit outside the main thread. That
makes it much easier to find those cases.
Regards,
Sebastien
_______________________________________________
MonoTouch mailing list
[email protected]
http://lists.ximian.com/mailman/listinfo/monotouch