My MonoTouch Version Info:
Release ID: 20401003
Git revision: 2f1746af36f421d262dcd2b0542ce86b12158f02
Build date: 2010-12-23 23:13:38+0000
The MFMailComposeViewController is displayed and works correctly as a dialog using the following code:
if (MFMailComposeViewController.CanSendMail)
{
MFMailComposeViewController mail;
mail = new MFMailComposeViewController ();
mail.SetSubject ("Subject Test");
mail.SetMessageBody ("Body Test", false);
mail.Finished += HandleMailFinished;
this.navigationController.PresentModalViewController (mail, true);
}
else
{
new UIAlertView ("Mail Failed", "Mail Failed", null, "OK", null).Show ();
}
However, once the user selects Cancel | Delete Draft or Cancel | Save Draft or Send, the App throws a run-time error like the following:
Stacktrace:
at (wrapper managed-to-native) MonoTouch.UIKit.UIApplication.UIApplicationMain (int,string[],intptr,intptr) <0x00004
at (wrapper managed-to-native) MonoTouch.UIKit.UIApplication.UIApplicationMain (int,string[],intptr,intptr) <0x00004
at MonoTouch.UIKit.UIApplication.Main (string[],string,string) [0x00038] in /Users/plasma/Source/iphone/monotouch/UIKit/UIApplication.cs:26
at MonoTouch.UIKit.UIApplication.Main (string[]) [0x00000] in /Users/plasma/Source/iphone/monotouch/UIKit/UIApplication.cs:31
at MailDialog.Application.Main (string[]) [0x00000] in /Users/rrkhan/Projects/Sandbox/MailDialog/Main.cs:15
at (wrapper runtime-invoke) .runtime_invoke_void_object (object,intptr,intptr,intptr)
Native stacktrace:
0 MailDialog 0x000be66f mono_handle_native_sigsegv + 343
1 MailDialog 0x0000e43e mono_sigsegv_signal_handler + 313
2 libSystem.B.dylib 0x903e946b _sigtramp + 43
3 ??? 0xffffffff 0x0 + 4294967295
4 MessageUI 0x01a9f6b7 -[MFMailComposeController _close] + 284
5 UIKit 0x01f682f1 -[UIActionSheet(Private) _buttonClicked:] + 258
6 UIKit 0x01be1a6e -[UIApplication sendAction:to:from:forEvent:] + 119
7 UIKit 0x01c701b5 -[UIControl sendAction:to:forEvent:] + 67
8 UIKit 0x01c72647 -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 527
9 UIKit 0x01c711f4 -[UIControl touchesEnded:withEvent:] + 458
10 UIKit 0x01c060d1 -[UIWindow _sendTouchesForEvent:] + 567
11 UIKit 0x01be737a -[UIApplication sendEvent:] + 447
12 UIKit 0x01bec732 _UIApplicationHandleEvent + 7576
13 GraphicsServices 0x03eb7a36 PurpleEventCallback + 1550
14 CoreFoundation 0x00df9064 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION + 52
15 CoreFoundation 0x00d596f7 __CFRunLoopDoSource1 + 215
16 CoreFoundation 0x00d56983 __CFRunLoopRun + 979
17 CoreFoundation 0x00d56240 CFRunLoopRunSpecific + 208
18 CoreFoundation 0x00d56161 CFRunLoopRunInMode + 97
19 GraphicsServices 0x03eb6268 GSEventRunModal + 217
20 GraphicsServices 0x03eb632d GSEventRun + 115
21 UIKit 0x01bf042e UIApplicationMain + 1160
22 ??? 0x0a1e4bd9 0x0 + 169757657
23 ??? 0x0a1e4b12 0x0 + 169757458
24 ??? 0x0a1e4515 0x0 + 169755925
25 ??? 0x0a1e4451 0x0 + 169755729
26 ??? 0x0a1e44ac 0x0 + 169755820
27 MailDialog 0x0000e202 mono_jit_runtime_invoke + 1360
28 MailDialog 0x001c92af mono_runtime_invoke + 137
29 MailDialog 0x001caf6b mono_runtime_exec_main + 714
30 MailDialog 0x001ca891 mono_runtime_run_main + 812
31 MailDialog 0x00094fe8 mono_jit_exec + 200
32 MailDialog 0x0027cf05 main + 3494
33 MailDialog 0x00002ca1 _start + 208
34 MailDialog 0x00002bd0 start + 40
Debug info from gdb:
warning: Could not find object file "/var/folders/Ny/NyElTwhDGD8kZMqIEeLGXE+++TI/-Tmp-//cc6F1tBs.o" - no debug information available for "template.m".
warning: .o file "/Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator4.2.sdk/usr/lib/libmonotouch.a(zlib-helper.x86.42.o)" more recent than executable timestamp in "/Users/rrkhan/Library/Application Support/iPhone Simulator/4.2/Applications/52AF1D24-AADA-48ED-B373-ED08E89E4985/MailDialog.app/MailDialog"
warning: Could not open OSO file /Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator4.2.sdk/usr/lib/libmonotouch.a(zlib-helper.x86.42.o) to scan for pubtypes for objfile /Users/rrkhan/Library/Application Support/iPhone Simulator/4.2/Applications/52AF1D24-AADA-48ED-B373-ED08E89E4985/MailDialog.app/MailDialog
warning: .o file "/Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator4.2.sdk/usr/lib/libmonotouch.a(monotouch-glue.x86.42.o)" more recent than executable timestamp in "/Users/rrkhan/Library/Application Support/iPhone Simulator/4.2/Applications/52AF1D24-AADA-48ED-B373-ED08E89E4985/MailDialog.app/MailDialog"
warning: Could not open OSO file /Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator4.2.sdk/usr/lib/libmonotouch.a(monotouch-glue.x86.42.o) to scan for pubtypes for objfile /Users/rrkhan/Library/Application Support/iPhone Simulator/4.2/Applications/52AF1D24-AADA-48ED-B373-ED08E89E4985/MailDialog.app/MailDialog
warning: .o file "/Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator4.2.sdk/usr/lib/libmonotouch.a(gc.x86.42.o)" more recent than executable timestamp in "/Users/rrkhan/Library/Application Support/iPhone Simulator/4.2/Applications/52AF1D24-AADA-48ED-B373-ED08E89E4985/MailDialog.app/MailDialog"
warning: Could not open OSO file /Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator4.2.sdk/usr/lib/libmonotouch.a(gc.x86.42.o) to scan for pubtypes for objfile /Users/rrkhan/Library/Application Support/iPhone Simulator/4.2/Applications/52AF1D24-AADA-48ED-B373-ED08E89E4985/MailDialog.app/MailDialog
Error connecting stdout and stderr (127.0.0.1:10001)
warning: .o file "/Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator4.2.sdk/usr/lib/libmonotouch.a(monotouch-glue.x86.42.o)" more recent than executable timestamp in "/Users/rrkhan/Library/Application Support/iPhone Simulator/4.2/Applications/52AF1D24-AADA-48ED-B373-ED08E89E4985/MailDialog.app/MailDialog"
warning: Couldn't open object file '/Developer/MonoTouch/SDKs/MonoTouch.iphonesimulator4.2.sdk/usr/lib/libmonotouch.a(monotouch-glue.x86.42.o)'
Attaching to process 9992.
Reading symbols for shared libraries . done
Reading symbols for shared libraries ....................................................................................................................... done
0x9038e459 in read$UNIX2003 ()
8 0x903a8a12 in __workq_kernreturn ()
7 "WebThread" 0x903830fa in mach_msg_trap ()
6 0x903b10a6 in __semwait_signal ()
5 0x90383136 in semaphore_wait_trap ()
4 0x903830fa in mach_msg_trap ()
3 0x903a8a12 in __workq_kernreturn ()
2 "com.apple.libdispatch-manager" 0x903a9982 in kevent ()
* 1 "com.apple.main-thread" 0x9038e459 in read$UNIX2003 ()
Thread 8 (process 9992):
0 0x903a8a12 in __workq_kernreturn ()
1 0x903a8fa8 in _pthread_wqthread ()
2 0x903a8bc6 in start_wqthread ()
Thread 7 (process 9992):
0 0x903830fa in mach_msg_trap ()
1 0x90383867 in mach_msg ()
2 0x00df94a6 in __CFRunLoopServiceMachPort ()
3 0x00d56874 in __CFRunLoopRun ()
4 0x00d56240 in CFRunLoopRunSpecific ()
5 0x00d56161 in CFRunLoopRunInMode ()
6 0x04f7c423 in RunWebThread ()
7 0x903b085d in _pthread_start ()
8 0x903b06e2 in thread_start ()
Thread 6 (process 9992):
0 0x903b10a6 in __semwait_signal ()
1 0x903dcee5 in nanosleep$UNIX2003 ()
2 0x903dce23 in usleep$UNIX2003 ()
3 0x0027714c in monotouch_pump_gc ()
4 0x903b085d in _pthread_start ()
5 0x903b06e2 in thread_start ()
Thread 5 (process 9992):
0 0x90383136 in semaphore_wait_trap ()
1 0x0015ae1d in finalizer_thread (unused=0x0) at ../../../../mono/metadata/gc.c:1026
2 0x002034a3 in start_wrapper (data=0x7b16ba0) at ../../../../mono/metadata/threads.c:661
3 0x002448e2 in thread_start_routine (args=0x8037e34) at ../../../../mono/io-layer/wthreads.c:286
4 0x00274357 in GC_start_routine (arg=0x6ff7f60) at ../../../libgc/pthread_support.c:1390
5 0x903b085d in _pthread_start ()
6 0x903b06e2 in thread_start ()
Thread 4 (process 9992):
0 0x903830fa in mach_msg_trap ()
1 0x90383867 in mach_msg ()
2 0x0011cc46 in mach_exception_thread (arg=0x0) at ../../../../mono/mini/mini-darwin.c:138
3 0x903b085d in _pthread_start ()
4 0x903b06e2 in thread_start ()
Thread 3 (process 9992):
0 0x903a8a12 in __workq_kernreturn ()
1 0x903a8fa8 in _pthread_wqthread ()
2 0x903a8bc6 in start_wqthread ()
Thread 2 (process 9992):
0 0x903a9982 in kevent ()
1 0x903aa09c in _dispatch_mgr_invoke ()
2 0x903a9559 in _dispatch_queue_invoke ()
3 0x903a92fe in _dispatch_worker_thread2 ()
4 0x903a8d81 in _pthread_wqthread ()
5 0x903a8bc6 in start_wqthread ()
Thread 1 (process 9992):
0 0x9038e459 in read$UNIX2003 ()
1 0x000be81f in mono_handle_native_sigsegv (signal=11, ctx=0xbfffd238) at ../../../../mono/mini/mini-exceptions.c:1826
2 0x0000e43e in mono_sigsegv_signal_handler (_dummy=10, info=0xbfffd1f8, context=0xbfffd238) at ../../../../mono/mini/mini.c:4846
3
4 0x028d6a63 in objc_msgSend ()
5 0x01ad469f in func.24012 ()
6 0x01a9f6b7 in -[MFMailComposeController _close] ()
7 0x01f682f1 in -[UIActionSheet(Private) _buttonClicked:] ()
8 0x01be1a6e in -[UIApplication sendAction:to:from:forEvent:] ()
9 0x01c701b5 in -[UIControl sendAction:to:forEvent:] ()
10 0x01c72647 in -[UIControl(Internal) _sendActionsForEvents:withEvent:] ()
11 0x01c711f4 in -[UIControl touchesEnded:withEvent:] ()
12 0x01c060d1 in -[UIWindow _sendTouchesForEvent:] ()
13 0x01be737a in -[UIApplication sendEvent:] ()
14 0x01bec732 in _UIApplicationHandleEvent ()
15 0x03eb7a36 in PurpleEventCallback ()
16 0x00df9064 in CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION ()
17 0x00d596f7 in __CFRunLoopDoSource1 ()
18 0x00d56983 in __CFRunLoopRun ()
19 0x00d56240 in CFRunLoopRunSpecific ()
20 0x00d56161 in CFRunLoopRunInMode ()
21 0x03eb6268 in GSEventRunModal ()
22 0x03eb632d in GSEventRun ()
23 0x01bf042e in UIApplicationMain ()
24 0x0a1e4bd9 in ?? ()
25 0x0a1e4b12 in ?? ()
26 0x0a1e4515 in ?? ()
27 0x0a1e4451 in ?? ()
28 0x0a1e44ac in ?? ()
29 0x0000e202 in mono_jit_runtime_invoke (method=0xa806e6c, obj=0x0, params=0xbfffedbc, exc=0x0) at ../../../../mono/mini/mini.c:4733
30 0x001c92af in mono_runtime_invoke (method=0xa806e6c, obj=0x0, params=0xbfffedbc, exc=0x0) at ../../../../mono/metadata/object.c:2615
31 0x001caf6b in mono_runtime_exec_main (method=0xa806e6c, args=0xa6a34e0, exc=0x0) at ../../../../mono/metadata/object.c:3581
32 0x001ca891 in mono_runtime_run_main (method=0xa806e6c, argc=0, argv=0xbfffeef4, exc=0x0) at ../../../../mono/metadata/object.c:3355
33 0x00094fe8 in mono_jit_exec (domain=0x6f8fe58, assembly=0xa200730, argc=1, argv=0xbfffeef0) at ../../../../mono/mini/driver.c:1094
34 0x0027cf05 in main ()
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object
at (wrapper managed-to-native) MonoTouch.UIKit.UIApplication:UIApplicationMain (int,string[],intptr,intptr)
at MonoTouch.UIKit.UIApplication.Main (System.String[] args, System.String principalClassName, System.String delegateClassName) [0x00038] in /Users/plasma/Source/iphone/monotouch/UIKit/UIApplication.cs:26
at MonoTouch.UIKit.UIApplication.Main (System.String[] args) [0x00000] in /Users/plasma/Source/iphone/monotouch/UIKit/UIApplication.cs:31
at MailDialog.Application.Main (System.String[] args) [0x00000] in /Users/rrkhan/Projects/Sandbox/MailDialog/Main.cs:15
I have a very simple sample project illustrating the problem. I can sent you if required.