Done. http://bugzilla.xamarin.com/show_bug.cgi?id=733
On Saturday, September 10, 2011 at 10:51, Jeff Stedfast [via MonoTouch] wrote:
> Hi Andrew,
>
> I don't know the answer to this but it seems like an important issue that we
> will need to examine, so could you submit this as a bug to
> http://bugzilla.xamarin.com?
>
> Thanks,
>
> Jeff
>
> On Fri, Sep 9, 2011 at 6:45 PM, Andrew Young <[hidden email]
> (/user/SendEmail.jtp?type=node&node=3804114&i=0)> wrote:
> > I'll save the crash dump for last to spare everyone the agony.
> >
> > Usually when you see an error for "System.MissingMethodException: No
> > constructor found for ViewController::.ctor(System.IntPtr)" its because you
> > didn't keep a hard reference for your object around. I assure you that I'm
> > keeping a ref to this ViewController via a private class member.
> >
> > In low memory situations, when the phone has lots of background apps open,
> > my app gets a memory warning and this is usually when the crash occurs. I
> > think what is happening is that GC collects the ViewController before
> > native code calls ViewDidUnload(). GC collecting the object is the right
> > thing at that point because I am finished with the ViewController; I don't
> > need it anymore.
> >
> > Should I just go ahead and implement the ctor(IntPtr handle) to satiate
> > MonoTouch? Implementing the ctor definitely gets rid of the crash. Or is
> > there something else I can do?
> >
> >
> >
> > [ERROR] FATAL UNHANDLED EXCEPTION: System.Exception: Selector invoked from
> > objective-c on a managed object that has been GC'ed --->
> > System.MissingMethodException: No constructor found for
> > SomeApp.iPhone.Controllers.Plans.Details.DetailsViewController::.ctor(System.IntPtr)
> >
> > at System.Activator.CreateInstance (System.Type type, BindingFlags
> > bindingAttr, System.Reflection.Binder binder, System.Object[] args,
> > System.Globalization.CultureInfo culture, System.Object[]
> > activationAttributes) [0x00000] in <filename unknown>:0
> > at System.Activator.CreateInstance (System.Type type, System.Object[]
> > args, System.Object[] activationAttributes) [0x00000] in <filename
> > unknown>:0
> > at System.Activator.CreateInstance (System.Type type, System.Object[]
> > args) [0x00000] in <filename unknown>:0
> > at MonoTouch.ObjCRuntime.Runtime.ConstructNSObject (IntPtr ptr, IntPtr
> > klass) [0x00000] in <filename unknown>:0
> > --- End of inner exception stack trace ---
> > at MonoTouch.ObjCRuntime.Runtime.ConstructNSObject (IntPtr ptr, IntPtr
> > klass) [0x00000] in <filename unknown>:0
> > at MonoTouch.ObjCRuntime.Runtime.GetNSObject (IntPtr ptr) [0x00000] in
> > <filename unknown>:0
> > at MonoTouch.ObjCRuntime.Runtime.GetNSObjectWrapped (IntPtr ptr) [0x00000]
> > in <filename unknown>:0
> > at (wrapper native-to-managed)
> > MonoTouch.ObjCRuntime.Runtime:GetNSObjectWrapped (intptr)
> > at MonoTouch.UIKit.UIApplication.Main (System.String[] args, System.String
> > principalClassName, System.String delegateClassName) [0x00000] in <filename
> > unknown>:0
> > at MonoTouch.UIKit.UIApplication.Main (System.String[] args) [0x00000] in
> > <filename unknown>:0
> > at SomeApp.iPhone.Application.Main (System.String[] args) [0x00000] in
> > /Users/Andrew/Projects/saambaa-iphone/SomeApp.iPhone/Main.cs:23
> > Terminating runtime due to unhandled exception
> > Stacktrace:
> > Native stacktrace:
> > 0 SomeAppiPhone 0x00b597cc mono_handle_native_sigsegv + 412
> > 1 SomeAppiPhone 0x00b85000 sigabrt_signal_handler + 148
> > 2 libsystem_c.dylib 0x34bd272f _sigtramp + 42
> > 3 libsystem_c.dylib 0x34bc73bb pthread_kill + 58
> > 4 libsystem_c.dylib 0x34bbfbff abort + 78
> > 5 SomeAppiPhone 0x00cc3874 monoeg_g_logv + 248
> > 6 SomeAppiPhone 0x00cc3908 monoeg_assertion_message + 44
> > 7 SomeAppiPhone 0x00b2dca0 mono_thread_abort + 224
> > 8 SomeAppiPhone 0x00b581f0 mono_handle_exception_internal + 2436
> > 9 SomeAppiPhone 0x00b58e68 mono_handle_exception + 108
> > 10 SomeAppiPhone 0x00b82e64 mono_arm_throw_exception + 324
> > 11 SomeAppiPhone 0x00833b14 throw_exception + 48
> > 12 SomeAppiPhone 0x00491330
> > MonoTouch_ObjCRuntime_Runtime_GetNSObject_intptr + 144
> > 13 SomeAppiPhone 0x004913b0
> > MonoTouch_ObjCRuntime_Runtime_GetNSObjectWrapped_intptr + 28
> > 14 SomeAppiPhone 0x004cf1f8
> > wrapper_native_to_managed_MonoTouch_ObjCRuntime_Runtime_GetNSObjectWrapped_intptr
> > + 64
> > 15 SomeAppiPhone 0x00ce7744 get_managed_object_for_ptr + 136
> > 16 SomeAppiPhone 0x00cea8e0 monotouch_trampoline + 76
> > 17 UIKit 0x35df7a29 -[UIViewController unloadViewForced:] + 172
> > 18 UIKit 0x35e076b9 -[UIViewController unloadViewIfReloadable] + 16
> > 19 UIKit 0x35e4e12d -[UIViewController purgeMemoryForReason:] + 40
> > 20 UIKit 0x35e4e14d -[UIViewController didReceiveMemoryWarning] + 16
> > 21 UIKit 0x35e4e163 -[UIViewController _didReceiveMemoryWarning:] + 14
> > 22 Foundation 0x3529d183 _nsnote_callback + 142
> > 23 CoreFoundation 0x36eb420f __CFXNotificationPost_old + 402
> > 24 CoreFoundation 0x36e4eeeb _CFXNotificationPostNotification + 118
> > 25 Foundation 0x3529a5d3 -[NSNotificationCenter
> > postNotificationName:object:userInfo:] + 70
> > 26 Foundation 0x3529c1c1 -[NSNotificationCenter
> > postNotificationName:object:] + 24
> > 27 UIKit 0x35e24361 -[UIApplication _performMemoryWarning] + 48
> > 28 UIKit 0x35e24d83 -[UIApplication _receivedMemoryNotification] + 126
> > 29 UIKit 0x35e22507 _memoryStatusChanged + 42
> > 30 CoreFoundation 0x36eb4d69 __CFNotificationCenterDarwinCallBack + 24
> > 31 CoreFoundation 0x36eb1bdf __CFMachPortPerform + 210
> > 32 CoreFoundation 0x36ebca97
> > __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 26
> > 33 CoreFoundation 0x36ebe83f __CFRunLoopDoSource1 + 166
> > 34 CoreFoundation 0x36ebf60d __CFRunLoopRun + 520
> > 35 CoreFoundation 0x36e4fec3 CFRunLoopRunSpecific + 230
> > 36 CoreFoundation 0x36e4fdcb CFRunLoopRunInMode + 58
> > 37 GraphicsServices 0x3660941f GSEventRunModal + 114
> > 38 GraphicsServices 0x366094cb GSEventRun + 62
> > 39 UIKit 0x35cf9d69 -[UIApplication _run] + 404
> > 40 UIKit 0x35cf7807 UIApplicationMain + 670
> > 41 SomeAppiPhone 0x004ce9f4
> > wrapper_managed_to_native_MonoTouch_UIKit_UIApplication_UIApplicationMain_int_string___intptr_intptr
> > + 240
> > 42 SomeAppiPhone 0x0049498c MonoTouch_UIKit_UIApplication_Main_string__ +
> > 36
> > 43 SomeAppiPhone 0x00328738 SomeApp_iPhone_Application_Main_string__ + 128
> > 44 SomeAppiPhone 0x007e2d00
> > wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr
> > + 200
> > 45 SomeAppiPhone 0x00b32760 mono_jit_runtime_invoke + 2800
> > 46 SomeAppiPhone 0x00c3c89c mono_runtime_invoke + 140
> > 47 SomeAppiPhone 0x00c3f934 mono_runtime_exec_main + 784
> > 48 SomeAppiPhone 0x00c3e964 mono_runtime_run_main + 1048
> > 49 SomeAppiPhone 0x00b3ddf8 mono_jit_exec + 216
> > 50 SomeAppiPhone 0x00b28d20 main + 5300
> > 51 SomeAppiPhone 0x00002c08 start + 40
> > Debug info from gdb:
> > =================================================================
> > Got a SIGABRT while executing native code. This usually indicates
> > a fatal error in the mono runtime or one of the native libraries
> > used by your application.
> > =================================================================
> >
> >
> > _______________________________________________
> > MonoTouch mailing list
> > [hidden email] (/user/SendEmail.jtp?type=node&node=3804114&i=1)
> > http://lists.ximian.com/mailman/listinfo/monotouch
> >
>
>
> _______________________________________________
> MonoTouch mailing list
> [hidden email] (/user/SendEmail.jtp?type=node&node=3804114&i=2)
> http://lists.ximian.com/mailman/listinfo/monotouch
>
>
> If you reply to this email, your message will be added to the discussion
> below:
> http://monotouch.2284126.n4.nabble.com/System-MissingMethodException-No-constructor-found-for-ViewController-ctor-System-IntPtr-tp3802978p3804114.html
>
> To start a new topic under MonoTouch, email
> [email protected]
> (mailto:[email protected])
> To unsubscribe from MonoTouch, click here
> (http://monotouch.2284126.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3346893&code=YW5kcmV3ZHlvdW5nQGdtYWlsLmNvbXwzMzQ2ODkzfDE5MjczODc4ODI=).
>
--
View this message in context:
http://monotouch.2284126.n4.nabble.com/System-MissingMethodException-No-constructor-found-for-ViewController-ctor-System-IntPtr-tp3802978p3804691.html
Sent from the MonoTouch mailing list archive at Nabble.com.
_______________________________________________
MonoTouch mailing list
[email protected]
http://lists.ximian.com/mailman/listinfo/monotouch