Please do not reply to this email- if you want to comment on the bug, go to the URL shown below and enter your comments there.
Changed by [EMAIL PROTECTED] http://bugzilla.ximian.com/show_bug.cgi?id=78315 --- shadow/78315 2006-09-06 12:33:22.000000000 -0400 +++ shadow/78315.tmp.25458 2006-09-06 16:10:42.000000000 -0400 @@ -327,6 +327,20 @@ Marshal.FreeHGlobal (comInterface); ------- Additional Comments From [EMAIL PROTECTED] 2006-09-06 12:33 ------- Robert's suggestion seems to work. Committed and marking as fixed. + +------- Additional Comments From [EMAIL PROTECTED] 2006-09-06 16:10 ------- +The problem was that ManagedToNativeWrapper had a destructor that +was only called when terminating. COM objects are freed using +Release so there is no need for a destructor. + +~VtableDestructor seems not to be called by the runtime but adding +if (!Environment.HasShutdownStarted) prevents it from running for +sure. I added reference counting to COM vtable and will only be +freed when there are no objects using it. + +Some Image objects seem not to be finalized by the GC so in fact COM +vtable is not freed because GDI+ holds a reference on +ManagedToNativeWrapper. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
