This is Xamarin's bug tracking system. For product support, please use the support links listed in your Xamarin Account.
Bug 2474 - windows form app crashes after updating from mono 2.10.6 to 2.10.8 and 2.10.8.1
: windows form app crashes after updating from mono 2.10.6 to 2.10.8 and 2.10.8.1
Status: RESOLVED FIXED
Product: Class Libraries
Classification: Mono
Component: Windows.Forms
: 2.10.x
: PC Mac OS
: --- normal
: ---
Assigned To: Duncan Mak
:
:
:
:
  Show dependency treegraph
 
Reported: 2011-12-12 18:29 EST by Matteo Tesser
Modified: 2012-10-31 22:14 EDT (History)
9 users (show)

See Also:
Tags:
Test Case URL:
External Submit: ---


Attachments

Description Matteo Tesser 2011-12-12 18:29:20 EST
After updating mono 2.10.6 to 2.10.7 windows forms apps stop working. When
launching a windows forms app the moon stack trace is the following 

Gtk not found (missing LD_LIBRARY_PATH to libgtk-x11-2.0.so.0?), using built-in
colorscheme
[ERROR] FATAL UNHANDLED EXCEPTION: System.EntryPointNotFoundException:
GdipCreateFromXDrawable_linux
  at (wrapper managed-to-native)
System.Drawing.GDIPlus:GdipCreateFromXDrawable_linux (intptr,intptr,intptr&)
  at System.Drawing.Graphics.FromXDrawable (IntPtr drawable, IntPtr display)
[0x00000] in <filename unknown>:0 
  at System.Drawing.Graphics.FromHwnd (IntPtr hwnd) [0x00000] in <filename
unknown>:0 
  at System.Windows.Forms.XplatUIX11.GetAutoScaleSize (System.Drawing.Font
font) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.XplatUI.GetAutoScaleSize (System.Drawing.Font font)
[0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Form.GetAutoScaleSize (System.Drawing.Font font)
[0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Form..ctor () [0x00000] in <filename unknown>:0
Comment 1 Matteo Tesser 2012-01-04 03:20:51 EST
Update: 

-The problem manifests also in the last stable mono release 2.10.8 and in the
new 2.10.8.1

-The  Mac OS X version is 10.6.8
Comment 2 Matteo Tesser 2012-01-30 14:25:48 EST
Forgot to mention: this happens when the enviroment variable
MONO_MWF_MAC_FORCE_X11 is true.
Comment 3 Frank Bergmann 2012-02-11 15:34:44 EST
the same problem occurs with the 2.10.9 beta. 

my osx version is : 10.7.3
Comment 4 Duncan Mak 2012-02-14 20:43:41 EST
Since Mono 2.10.8, we have removed the X11 dependency for libgdiplus on OS X.

Mono 2.10.8 and 2.10.9 both can run simple WinForm apps with no problems (with
the OSX native backend).

Is there a reason why you need to force X11 via the MONO_MWF_MAC_FORCE_X11
flag?
Comment 5 Frank Bergmann 2012-02-14 21:08:56 EST
In my case the only way to run my Winforms apps was to use the X11 backend,
otherwise the applications would crash immediately, or would not react to user
input correctly.
Comment 6 Duncan Mak 2012-02-14 21:14:42 EST
Have you tried running it in a recent Mono installation, like 2.10.9?

The reason why we removed the X11 dependency is because it conflicts with font
support in GTK.
Comment 7 Frank Bergmann 2012-02-14 21:16:42 EST
Another reason would be performance. The applications responded really snappy
using X11 but would be sluggish when not setting the flag (you can actually
watch the app rendering individual components). 

Below just one example of a stack trace showing a toolstrip failing when the
flag was not set. 


libpng warning: Incorrect sBIT chunk length
libpng warning: Incorrect sBIT chunk length
System.ArgumentException: A null reference or invalid value was found [GDI+
status: InvalidParameter]
  at System.Drawing.GDIPlus.CheckStatus (Status status) [0x00000] in <filename
unknown>:0 
  at System.Drawing.Drawing2D.LinearGradientBrush..ctor (Rectangle rect, Color
color1, Color color2, LinearGradientMode linearGradientMode) [0x00000] in
<filename unknown>:0 
  at (wrapper remoting-invoke-with-check)
System.Drawing.Drawing2D.LinearGradientBrush:.ctor
(System.Drawing.Rectangle,System.Drawing.Color,System.Drawing.Color,System.Drawing.Drawing2D.LinearGradientMode)
  at
System.Windows.Forms.ToolStripProfessionalRenderer.OnRenderToolStripPanelBackground
(System.Windows.Forms.ToolStripPanelRenderEventArgs e) [0x00000] in <filename
unknown>:0 
  at System.Windows.Forms.ToolStripRenderer.DrawToolStripPanelBackground
(System.Windows.Forms.ToolStripPanelRenderEventArgs e) [0x00000] in <filename
unknown>:0 
  at System.Windows.Forms.ToolStripPanel.OnPaintBackground
(System.Windows.Forms.PaintEventArgs e) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.WmPaint (System.Windows.Forms.Message& m)
[0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m)
[0x00000] in <filename unknown>:0 
  at System.Windows.Forms.ScrollableControl.WndProc
(System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.ContainerControl.WndProc
(System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control+ControlWindowTarget.OnMessage
(System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Control+ControlNativeWindow.WndProc
(System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.NativeWindow.WndProc (IntPtr hWnd, Msg msg, IntPtr
wParam, IntPtr lParam) [0x00000] in <filename unknown>:0
Comment 8 Frank Bergmann 2012-02-14 21:17:13 EST
yes the trace from above is from 2.10.9
Comment 9 Matteo Tesser 2012-02-15 01:12:46 EST
HI,It's very nice for users if you have removed X11 dependency on OSX, but the
problem with using winforms with quartz backend is that it not works correctly.
I agree with Frank's feedback: we use winform/X11 because it works! the quartz
backend is an order of magnitude slower and forms redraw incorrectly.

Yes, we tried with mono 2.10.9 and it fails.
Comment 10 Frank Bergmann 2012-03-12 06:14:30 EDT
Hello, 

I'm just wondering what the status of this issue is. I have to tell more and
more people to revert to mono 2.10.5. Would it be possible to have two versions
of System.Drawing? One for X11 and one for whatever you do with GTK? THen we
would simply map to the different native libraries. 

I would not mind bundling the different ones with my open source applications,
but having them fail to launch on peoples machine seems to be a bad option. 

Thanks
Frank
Comment 12 Duncan Mak 2012-05-29 17:52:06 EDT
I have a build of Mono 2.10.9 that should fix this issue:

http://download.mono-project.com/archive/2.10.9/macos-10-x86/12/MonoFramework-MDK-2.10.9_12.macos10.xamarin.x86.dmg

I would really appreciate it if you guys could try this out and see if it
improves the situation.

I'll make it available publicly once we've verified that this fixes the
problem.

Sorry it took so long for me to get back to you.
Comment 13 Joseph Hill 2012-05-29 21:47:02 EDT
It fixed the problem in the sample I was testing.
Comment 14 Frank Bergmann 2012-05-30 03:23:08 EDT
Wohoo, thanks .. all applications work again fine with that new version! Thanks
a lot!

Frank
Comment 15 Matteo Tesser 2012-05-30 04:10:03 EDT
Hi,unfortunately there is still some problem. With the new version we obtain
the following stack trace.


 at (wrapper managed-to-native) System.Drawing.GDIPlus.GdipDeleteGraphics
(intptr) <0xffffffff>
 at System.Drawing.Graphics.Dispose () <0x00063>
 at (wrapper remoting-invoke-with-check) System.Drawing.Graphics.Dispose ()
<0xffffffff>
 at System.Windows.Forms.XplatUIX11.PaintEventEnd
(System.Windows.Forms.Message&,intptr,bool) <0x000c3>
 at System.Windows.Forms.XplatUI.PaintEventEnd
(System.Windows.Forms.Message&,intptr,bool) <0x0001f>
 at System.Windows.Forms.Control.WmPaint (System.Windows.Forms.Message&)
<0x001c7>
 at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message&)
<0x0019b>
 at System.Windows.Forms.ScrollableControl.WndProc
(System.Windows.Forms.Message&) <0x00013>
 at System.Windows.Forms.ContainerControl.WndProc
(System.Windows.Forms.Message&) <0x00057>
 at System.Windows.Forms.Form.WndProc (System.Windows.Forms.Message&) <0x00243>
 at System.Windows.Forms.Control/ControlWindowTarget.OnMessage
(System.Windows.Forms.Message&) <0x0001a>
 at System.Windows.Forms.Control/ControlNativeWindow.WndProc
(System.Windows.Forms.Message&) <0x0002b>
 at System.Windows.Forms.NativeWindow.WndProc
(intptr,System.Windows.Forms.Msg,intptr,intptr) <0x00214>
 at System.Windows.Forms.XplatUIX11.SendMessage
(intptr,System.Windows.Forms.Msg,intptr,intptr) <0x002c3>
 at System.Windows.Forms.XplatUIX11.UpdateWindow (intptr) <0x0005c>
 at System.Windows.Forms.XplatUI.UpdateWindow (intptr) <0x0001a>
 at System.Windows.Forms.Control.Update () <0x0003b>
 at Fairmat.Modeler.Splash.UpdateStatus (string) <0x0012b>
 at (wrapper runtime-invoke) <Module>.runtime_invoke_void__this___object
(object,intptr,intptr,intptr) <0xffffffff>
 at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke
(System.Reflection.MonoMethod,object,object[],System.Exception&) <0xffffffff>
 at System.Reflection.MonoMethod.Invoke
(object,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo)
<0x00147>
 at System.Reflection.MethodBase.Invoke (object,object[]) <0x00022>
 at System.Delegate.DynamicInvokeImpl (object[]) <0x001c3>
 at System.MulticastDelegate.DynamicInvokeImpl (object[]) <0x00033>
 at System.Delegate.DynamicInvoke (object[]) <0x00016>
 at System.Windows.Forms.XplatUIDriverSupport.ExecutionCallback (object)
<0x0004f>
 at System.Security.SecurityContext.Run
(System.Security.SecurityContext,System.Threading.ContextCallback,object)
<0x0010a>
 at System.Threading.ExecutionContext.Run
(System.Threading.ExecutionContext,System.Threading.ContextCallback,object)
<0x0002f>
 at System.Windows.Forms.XplatUIDriverSupport.ExecuteClientMessage
(System.Runtime.InteropServices.GCHandle) <0x00083>
 at System.Windows.Forms.XplatUIX11.GetMessage
(object,System.Windows.Forms.MSG&,intptr,int,int) <0x02b7f>
 at System.Windows.Forms.XplatUI.GetMessage
(object,System.Windows.Forms.MSG&,intptr,int,int) <0x00026>
 at System.Windows.Forms.Application.RunLoop
(bool,System.Windows.Forms.ApplicationContext) <0x00b2f>
 at System.Windows.Forms.Form.ShowDialog (System.Windows.Forms.IWin32Window)
<0x00707>
 at System.Windows.Forms.Form.ShowDialog () <0x00013>
 at (wrapper remoting-invoke-with-check) System.Windows.Forms.Form.ShowDialog
() <0xffffffff>
 at Fairmat.Modeler.MainForm.initialize () <0x003b7>
 at Fairmat.Modeler.MainForm.MainForm_Load (object,System.EventArgs) <0x00033>
 at System.Windows.Forms.Form.OnLoad (System.EventArgs) <0x00062>
 at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs) <0x0008c>
 at System.Windows.Forms.Form.OnCreateControl () <0x00057>
 at System.Windows.Forms.Control.CreateControl () <0x0013f>
 at System.Windows.Forms.Control.SetVisibleCore (bool) <0x0007b>
 at System.Windows.Forms.Form.SetVisibleCore (bool) <0x0022f>
 at System.Windows.Forms.Control.set_Visible (bool) <0x00029>
 at (wrapper remoting-invoke-with-check)
System.Windows.Forms.Control.set_Visible (bool) <0xffffffff>
 at System.Windows.Forms.Application.RunLoop
(bool,System.Windows.Forms.ApplicationContext) <0x0020b>
 at System.Windows.Forms.Application.Run
(System.Windows.Forms.ApplicationContext) <0x0005b>
 at System.Windows.Forms.Application.Run (System.Windows.Forms.Form) <0x00037>
Comment 16 Duncan Mak 2012-05-30 10:16:16 EDT
(In reply to comment #15)
> Hi,unfortunately there is still some problem. With the new version we obtain
> the following stack trace.

Matteo - could you tell me the last known build of Mono that runs your
application correctly?

Also, it looks like the trace is truncated at the top. Which exception are you
getting now? I suspect it is no longer this one:

> [ERROR] FATAL UNHANDLED EXCEPTION: System.EntryPointNotFoundException:
> GdipCreateFromXDrawable_linux

as it was first reported.
Comment 17 Matteo Tesser 2012-05-30 12:37:29 EDT
Hi Duncan, the last working build is 2.10.5, in any case it works also using
any subsequent mono version when substituting the shipped Windows.Forms dll
with the 2.10.5 one.


In any case I forgot to copy-paste the most important line of the error. Here
it is:

Assertion failed: (!"reached"), function _cairo_hash_table_lookup_exact_key,
file cairo-hash.c, line 471. 

Thanks,
Matteo
Comment 18 Duncan Mak 2012-05-30 14:15:52 EDT
Hello Matteo,

So 2.10.6 fails? I just checked the commit logs and I don't see any changes in
WinForms in between 2.10.5 and 2.10.6.

Could you verify that this is the correct stack trace that you see?

Assertion failed: (!"reached"), function _cairo_hash_table_lookup_exact_key,
file cairo-hash.c, line 471. 
 at (wrapper managed-to-native) System.Drawing.GDIPlus.GdipDeleteGraphics
(intptr) <0xffffffff>
 at System.Drawing.Graphics.Dispose () <0x00063>

Perhaps you could also paste the complete stack trace once more? Right now, if
that trace is correct, it's looking like it's crashing because the graphics
object is NULL.
Comment 19 Matteo Tesser 2012-05-31 11:15:16 EDT
Hello Duncan,
Below the full stack trace and other information. The new MONO version is now
working for us after a small change of our code. I reported below the method
causing the error. If we comment the calls to Invalidate() and Update() which
we inserted for making it working in earlier mono versions, everything works
fine. Probably, the old windows-forms osx backend was a bit more resistant to
many Invalidate() Update() calls.

Thanks for the new release,
MT


        void UpdateStatus(string value)
        {
            if (value == null)
                return;

                if (InvokeRequired)
                {
                    if (!this.Created)
                        return;//skip the update

                    BeginInvoke(new StringParameterDelegate(UpdateStatus), new
object[] { value });
                    return;
                }
                labelReport.Text = value;
                labelReport.Invalidate();
                Invalidate();
        Update();
        }

Full Stack Trace

Assertion failed: (!"reached"), function _cairo_hash_table_lookup_exact_key,
file cairo-hash.c, line 471.
Stacktrace:

  at (wrapper managed-to-native) System.Drawing.GDIPlus.GdipDeleteGraphics
(intptr) <0xffffffff>
  at System.Drawing.Graphics.Dispose () <0x00063>
  at (wrapper remoting-invoke-with-check) System.Drawing.Graphics.Dispose ()
<0xffffffff>
  at System.Windows.Forms.XplatUIX11.PaintEventEnd
(System.Windows.Forms.Message&,intptr,bool) <0x000c3>
  at System.Windows.Forms.XplatUI.PaintEventEnd
(System.Windows.Forms.Message&,intptr,bool) <0x0001f>
  at System.Windows.Forms.Control.WmPaint (System.Windows.Forms.Message&)
<0x001c7>
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message&)
<0x0019b>
  at System.Windows.Forms.ScrollableControl.WndProc
(System.Windows.Forms.Message&) <0x00013>
  at System.Windows.Forms.ContainerControl.WndProc
(System.Windows.Forms.Message&) <0x00057>
  at System.Windows.Forms.Form.WndProc (System.Windows.Forms.Message&)
<0x00243>
  at System.Windows.Forms.Control/ControlWindowTarget.OnMessage
(System.Windows.Forms.Message&) <0x0001a>
  at System.Windows.Forms.Control/ControlNativeWindow.WndProc
(System.Windows.Forms.Message&) <0x0002b>
  at System.Windows.Forms.NativeWindow.WndProc
(intptr,System.Windows.Forms.Msg,intptr,intptr) <0x00214>
  at System.Windows.Forms.XplatUIX11.SendMessage
(intptr,System.Windows.Forms.Msg,intptr,intptr) <0x002c3>
  at System.Windows.Forms.XplatUIX11.UpdateWindow (intptr) <0x0005c>
  at System.Windows.Forms.XplatUI.UpdateWindow (intptr) <0x0001a>
  at System.Windows.Forms.Control.Update () <0x0003b>
  at Fairmat.Modeler.Splash.UpdateStatus (string) <0x00123>
  at (wrapper runtime-invoke) <Module>.runtime_invoke_void__this___object
(object,intptr,intptr,intptr) <0xffffffff>
  at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke
(System.Reflection.MonoMethod,object,object[],System.Exception&) <0xffffffff>
  at System.Reflection.MonoMethod.Invoke
(object,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo)
<0x00147>
  at System.Reflection.MethodBase.Invoke (object,object[]) <0x00022>
  at System.Delegate.DynamicInvokeImpl (object[]) <0x001c3>
  at System.MulticastDelegate.DynamicInvokeImpl (object[]) <0x00033>
  at System.Delegate.DynamicInvoke (object[]) <0x00016>
  at System.Windows.Forms.XplatUIDriverSupport.ExecutionCallback (object)
<0x0004f>
  at System.Security.SecurityContext.Run
(System.Security.SecurityContext,System.Threading.ContextCallback,object)
<0x0010a>
  at System.Threading.ExecutionContext.Run
(System.Threading.ExecutionContext,System.Threading.ContextCallback,object)
<0x0002f>
  at System.Windows.Forms.XplatUIDriverSupport.ExecuteClientMessage
(System.Runtime.InteropServices.GCHandle) <0x00083>
  at System.Windows.Forms.XplatUIX11.GetMessage
(object,System.Windows.Forms.MSG&,intptr,int,int) <0x02b7f>
  at System.Windows.Forms.XplatUI.GetMessage
(object,System.Windows.Forms.MSG&,intptr,int,int) <0x00026>
  at System.Windows.Forms.Application.RunLoop
(bool,System.Windows.Forms.ApplicationContext) <0x00b2f>
  at System.Windows.Forms.Form.ShowDialog (System.Windows.Forms.IWin32Window)
<0x00707>
  at System.Windows.Forms.Form.ShowDialog () <0x00013>
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.Form.ShowDialog
() <0xffffffff>
  at Fairmat.Modeler.MainForm.initialize () <0x0039b>
  at Fairmat.Modeler.MainForm.MainForm_Load (object,System.EventArgs) <0x00017>
  at System.Windows.Forms.Form.OnLoad (System.EventArgs) <0x00062>
  at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs) <0x0008c>
  at System.Windows.Forms.Form.OnCreateControl () <0x00057>
  at System.Windows.Forms.Control.CreateControl () <0x0013f>
  at System.Windows.Forms.Control.SetVisibleCore (bool) <0x0007b>
  at System.Windows.Forms.Form.SetVisibleCore (bool) <0x0022f>
  at System.Windows.Forms.Control.set_Visible (bool) <0x00029>
  at (wrapper remoting-invoke-with-check)
System.Windows.Forms.Control.set_Visible (bool) <0xffffffff>
  at System.Windows.Forms.Application.RunLoop
(bool,System.Windows.Forms.ApplicationContext) <0x0020b>
  at System.Windows.Forms.Application.Run
(System.Windows.Forms.ApplicationContext) <0x0005b>
  at System.Windows.Forms.Application.Run (System.Windows.Forms.Form) <0x00037>
  at Fairmat.Modeler.Program.Main (string[]) <0x00daf>
  at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object
(object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:

 0   mono                                0x0009fdbf mono_handle_native_sigsegv
+ 287
 1   libSystem.B.dylib                   0x92a6e05b _sigtramp + 43
 2   ???                                 0xffffffff 0x0 + 4294967295
 3   libSystem.B.dylib                   0x92afb5a5 raise + 26
 4   libSystem.B.dylib                   0x92b116e4 abort + 93
 5   libSystem.B.dylib                   0x92afe20f __assert_rtn + 252
 6   libcairo.2.dylib                    0x02d2373f
_cairo_hash_table_lookup_exact_key + 239
 7   libcairo.2.dylib                    0x02d23760 _cairo_hash_table_remove +
24
 8   libcairo.2.dylib                    0x02d61d92
_cairo_toy_font_face_destroy + 150
 9   libcairo.2.dylib                    0x02d1bea5 cairo_font_face_destroy +
149
 10  libcairo.2.dylib                    0x02d1ea91 _cairo_gstate_fini + 34
 11  libcairo.2.dylib                    0x02d13968 cairo_destroy + 180
 12  libgdiplus.dylib                    0x02b365d9 GdipDeleteGraphics + 192
 13  ???                                 0x03627afc 0x0 + 56785660
 14  ???                                 0x03627a84 0x0 + 56785540
 15  ???                                 0x036279f0 0x0 + 56785392
 16  ???                                 0x04126bec 0x0 + 68316140
 17  ???                                 0x04126b20 0x0 + 68315936
 18  ???                                 0x0410a878 0x0 + 68200568
 19  ???                                 0x03619914 0x0 + 56727828
 20  ???                                 0x03ff4c04 0x0 + 67062788
 21  ???                                 0x03ff4bc8 0x0 + 67062728
 22  ???                                 0x03ff4a24 0x0 + 67062308
 23  ???                                 0x03619773 0x0 + 56727411
 24  ???                                 0x0361974c 0x0 + 56727372
 25  ???                                 0x03618a05 0x0 + 56723973
 26  ???                                 0x03617dec 0x0 + 56720876
 27  ???                                 0x0410a67d 0x0 + 68200061
 28  ???                                 0x0410a61b 0x0 + 68199963
 29  ???                                 0x03a225bc 0x0 + 60958140
 30  ???                                 0x0412eb0c 0x0 + 68348684
 31  ???                                 0x0489fcb5 0x0 + 76151989
 32  mono                                0x0000ecf4 mono_jit_runtime_invoke +
164
 33  mono                                0x00184354 mono_runtime_invoke + 68
 34  mono                                0x00187ef9 mono_runtime_invoke_array +
1065
 35  mono                                0x00130e8f ves_icall_InternalInvoke +
223
 36  ???                                 0x0349c618 0x0 + 55166488
 37  ???                                 0x0349c320 0x0 + 55165728
 38  ???                                 0x0396938b 0x0 + 60199819
 39  ???                                 0x0489f9f4 0x0 + 76151284
 40  ???                                 0x0489f69c 0x0 + 76150428
 41  ???                                 0x0489f65f 0x0 + 76150367
 42  ???                                 0x0489f590 0x0 + 76150160
 43  ???                                 0x0489ec1b 0x0 + 76147739
 44  ???                                 0x0489ea50 0x0 + 76147280
 45  ???                                 0x0489e984 0x0 + 76147076
 46  ???                                 0x044d53c0 0x0 + 72176576
 47  ???                                 0x044d0857 0x0 + 72157271
 48  ???                                 0x03ff2538 0x0 + 67052856
 49  ???                                 0x0412e770 0x0 + 68347760
 50  ???                                 0x0412d92c 0x0 + 68344108
 51  ???                                 0x0412d8e8 0x0 + 68344040
 52  ???                                 0x04127dd4 0x0 + 68320724
 53  ???                                 0x041277c8 0x0 + 68319176
 54  ???                                 0x0412768b 0x0 + 68318859
 55  ???                                 0x04127155 0x0 + 68317525
 56  ???                                 0x04127090 0x0 + 68317328
 57  ???                                 0x03612e50 0x0 + 56700496
 58  ???                                 0x03621c24 0x0 + 56761380
 59  ???                                 0x03ff2ca0 0x0 + 67054752
 60  ???                                 0x03621b72 0x0 + 56761202
 61  ???                                 0x03621b14 0x0 + 56761108
 62  ???                                 0x03ff1c14 0x0 + 67050516
 63  ???                                 0x03ff19b4 0x0 + 67049908
 64  ???                                 0x03ff1658 0x0 + 67049048
 65  ???                                 0x022f1250 0x0 + 36639312
 66  ???                                 0x022f15e7 0x0 + 36640231
 67  mono                                0x0000ecf4 mono_jit_runtime_invoke +
164
 68  mono                                0x00184354 mono_runtime_invoke + 68
 69  mono                                0x0018a41e mono_runtime_exec_main +
238
 70  mono                                0x0007464d mono_main + 6797
 71  mono                                0x00001fd6 start + 54

Debug info from gdb:

Attaching to process 538.
Reading symbols for shared libraries . done
Reading symbols for shared libraries warning: Trying to remove a section from
the ordered section list that did not exist at 0x2ea000.
.....................................................................................................................warning:
Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/errno.o" - no
debug information available for "errno.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/map.o" - no debug
information available for "map.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/signal.o" - no
debug information available for "signal.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/stdio.o" - no
debug information available for "stdio.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/string.o" - no
debug information available for "string.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/stdlib.o" - no
debug information available for "stdlib.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/dirent.o" - no
debug information available for "dirent.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/fcntl.o" - no
debug information available for "fcntl.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/fstab.o" - no
debug information available for "fstab.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/grp.o" - no debug
information available for "grp.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/macros.o" - no
debug information available for "macros.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/old-map.o" - no
debug information available for "old-map.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/pwd.o" - no debug
information available for "pwd.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/serial.o" - no
debug information available for "serial.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/sys-mman.o" - no
debug information available for "sys-mman.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/sys-sendfile.o" -
no debug information available for "sys-sendfile.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/sys-stat.o" - no
debug information available for "sys-stat.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/sys-statvfs.o" -
no debug information available for "sys-statvfs.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/sys-time.o" - no
debug information available for "sys-time.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/sys-utsname.o" -
no debug information available for "sys-utsname.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/sys-wait.o" - no
debug information available for "sys-wait.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/sys-xattr.o" - no
debug information available for "sys-xattr.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/syslog.o" - no
debug information available for "syslog.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/time.o" - no
debug information available for "time.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/unistd.o" - no
debug information available for "unistd.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/utime.o" - no
debug information available for "utime.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/x-struct-str.o" -
no debug information available for "x-struct-str.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/zlib-helper.o" -
no debug information available for "zlib-helper.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/ioapi.o" - no
debug information available for "minizip/ioapi.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/unzip.o" - no
debug information available for "minizip/unzip.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/support/.libs/zip.o" - no debug
information available for "minizip/zip.c".

warning: Could not find object file
"/private/tmp/monobuild/build/BUILD/mono-2.10.9/eglib/src/.libs/libeglib.a(libeglib_la-garray.o)"
- no debug information available for "garray.c".

. done
0x92a68cb5 in __wait4 ()
  5                                 0x92a07b42 in semaphore_wait_signal_trap ()
  4 "com.apple.libdispatch-manager" 0x92a2e382 in kevent ()
  3                                 0x92a07b36 in semaphore_wait_trap ()
  2                                 0x92a07afa in mach_msg_trap ()
* 1 "com.apple.main-thread"         0x92a68cb5 in __wait4 ()

Thread 5 (process 538):
#0  0x92a07b42 in semaphore_wait_signal_trap ()
#1  0x92a0d646 in pthread_mutex_lock ()
#2  0x02d6177a in _cairo_toy_font_face_hash_table_lock ()
#3  0x02d61b8e in cairo_toy_font_face_create ()
#4  0x02d2169b in _cairo_gstate_select_font_face ()
#5  0x02d15eb4 in cairo_select_font_face ()
#6  0x02b3609d in gdip_graphics_cairo_init ()
#7  0x02b360db in gdip_graphics_new ()
#8  0x02b36492 in GdipCreateFromXDrawable_linux ()
#9  0x03628d30 in ?? ()
#10 0x03628cb0 in ?? ()
#11 0x03628b94 in ?? ()
#12 0x03628794 in ?? ()
#13 0x0362873c in ?? ()
#14 0x036286f8 in ?? ()
#15 0x0360c018 in ?? ()
#16 0x04a0fe1c in ?? ()
#17 0x04a0fde0 in ?? ()
#18 0x04a0c540 in ?? ()
#19 0x04a0c4c0 in ?? ()
#20 0x04a0a220 in ?? ()
#21 0x04a08f80 in ?? ()
#22 0x04a22a20 in ?? ()
#23 0x04a281c8 in ?? ()
#24 0x022e95b1 in ?? ()
#25 0x0000ecf4 in mono_jit_runtime_invoke (method=0xb3e8bc, obj=0x4b5b800,
params=0xb0388a70, exc=0x0) at mini.c:5791
#26 0x00184354 in mono_runtime_invoke (method=0xb3e8bc, obj=0x4b5b800,
params=0xb0388a70, exc=0x0) at object.c:2755
#27 0x00187e56 in mono_runtime_invoke_array (method=0xb3e8bc, obj=0x4b5b800,
params=0x4c118b0, exc=0x0) at object.c:4128
#28 0x00130e8f in ves_icall_InternalInvoke (method=0x4b26468, this=0x0,
params=0x4c118b0, exc=0xb0388bfc) at icall.c:2866
#29 0x022e94b8 in ?? ()
#30 0x022e8fcc in ?? ()
#31 0x022e8e15 in ?? ()
#32 0x029caed3 in ?? ()
#33 0x029ca834 in ?? ()
#34 0x029ca64c in ?? ()
#35 0x044da2c8 in ?? ()
#36 0x0412db37 in ?? ()
#37 0x0412d99a in ?? ()
#38 0x022e95b1 in ?? ()
#39 0x0000ecf4 in mono_jit_runtime_invoke (method=0xa590fc, obj=0x3edd310,
params=0xb0388ed8, exc=0x0) at mini.c:5791
#40 0x00184354 in mono_runtime_invoke (method=0xa590fc, obj=0x3edd310,
params=0xb0388ed8, exc=0x0) at object.c:2755
#41 0x0018462f in mono_runtime_delegate_invoke (delegate=0x3edd310,
params=0xb0388ed8, exc=0x0) at object.c:3420
#42 0x001bd96b in start_wrapper (data=0x45088d0) at threads.c:790
#43 0x001efa8a in thread_start_routine (args=0x182bca0) at wthreads.c:287
#44 0x002171d4 in GC_start_routine (arg=0x510e40) at pthread_support.c:1468
#45 0x92a35259 in _pthread_start ()
#46 0x92a350de in thread_start ()

Thread 4 (process 538):
#0  0x92a2e382 in kevent ()
#1  0x92a2ea9c in _dispatch_mgr_invoke ()
#2  0x92a2df59 in _dispatch_queue_invoke ()
#3  0x92a2dcfe in _dispatch_worker_thread2 ()
#4  0x92a2d781 in _pthread_wqthread ()
#5  0x92a2d5c6 in start_wqthread ()

Thread 3 (process 538):
#0  0x92a07b36 in semaphore_wait_trap ()
#1  0x001f7eba in mono_sem_wait (sem=0x2c7df0, alertable=1) at
mono-semaphore.c:115
#2  0x0012a142 in finalizer_thread (unused=0x0) at gc.c:1066
#3  0x001bd8ec in start_wrapper (data=0x1314690) at threads.c:784
#4  0x001efa8a in thread_start_routine (args=0x182b9b8) at wthreads.c:287
#5  0x002171d4 in GC_start_routine (arg=0x510f60) at pthread_support.c:1468
#6  0x92a35259 in _pthread_start ()
#7  0x92a350de in thread_start ()

Thread 2 (process 538):
#0  0x92a07afa in mach_msg_trap ()
#1  0x92a08267 in mach_msg ()
#2  0x000ee0da in mach_exception_thread (arg=0x0) at mini-darwin.c:129
#3  0x002171d4 in GC_start_routine (arg=0x510f60) at pthread_support.c:1468
#4  0x92a35259 in _pthread_start ()
#5  0x92a350de in thread_start ()

Thread 1 (process 538):
#0  0x92a68cb5 in __wait4 ()
#1  0x92a68cad in waitpid$UNIX2003 ()
#2  0x0009fe9b in mono_handle_native_sigsegv (signal=6, ctx=0xbfffdb4c) at
mini-exceptions.c:2192
#3  <signal handler called>
#4  0x92a68c5a in __kill ()
#5  0x92a68c4c in kill$UNIX2003 ()
#6  0x92afb5a5 in raise ()
#7  0x92b116e4 in abort ()
#8  0x92afe20f in __assert_rtn ()
#9  0x02d2373f in _cairo_hash_table_lookup_exact_key ()
#10 0x02d23760 in _cairo_hash_table_remove ()
#11 0x02d61d92 in _cairo_toy_font_face_destroy ()
#12 0x02d1bea5 in cairo_font_face_destroy ()
#13 0x02d1ea91 in _cairo_gstate_fini ()
#14 0x02d13968 in cairo_destroy ()
#15 0x02b365d9 in GdipDeleteGraphics ()
#16 0x03627afc in ?? ()
#17 0x03627a84 in ?? ()
#18 0x036279f0 in ?? ()
#19 0x04126bec in ?? ()
#20 0x04126b20 in ?? ()
#21 0x0410a878 in ?? ()
#22 0x03619914 in ?? ()
#23 0x03ff4c04 in ?? ()
#24 0x03ff4bc8 in ?? ()
#25 0x03ff4a24 in ?? ()
#26 0x03619773 in ?? ()
#27 0x0361974c in ?? ()
#28 0x03618a05 in ?? ()
#29 0x03617dec in ?? ()
#30 0x0410a67d in ?? ()
#31 0x0410a61b in ?? ()
#32 0x03a225bc in ?? ()
#33 0x0412eb0c in ?? ()
#34 0x0489fcb5 in ?? ()
#35 0x0000ecf4 in mono_jit_runtime_invoke (method=0xacce24, obj=0x3e8a990,
params=0xbfffe250, exc=0x0) at mini.c:5791
#36 0x00184354 in mono_runtime_invoke (method=0xacce24, obj=0x3e8a990,
params=0xbfffe250, exc=0x0) at object.c:2755
#37 0x00187ef9 in mono_runtime_invoke_array (method=0xacce24, obj=0x3e8a990,
params=0x47ba690, exc=0x0) at object.c:4142
#38 0x00130e8f in ves_icall_InternalInvoke (method=0x3ee7138, this=0x3e8a990,
params=0x47ba690, exc=0xbfffe3e0) at icall.c:2866
#39 0x0349c618 in ?? ()
#40 0x0349c320 in ?? ()
#41 0x0396938b in ?? ()
#42 0x0489f9f4 in ?? ()
#43 0x0489f69c in ?? ()
#44 0x0489f65f in ?? ()
#45 0x0489f590 in ?? ()
#46 0x0489ec1b in ?? ()
#47 0x0489ea50 in ?? ()
#48 0x0489e984 in ?? ()
#49 0x044d53c0 in ?? ()
#50 0x044d0857 in ?? ()
#51 0x03ff2538 in ?? ()
#52 0x0412e770 in ?? ()
#53 0x0412d92c in ?? ()
#54 0x0412d8e8 in ?? ()
#55 0x04127dd4 in ?? ()
#56 0x041277c8 in ?? ()
#57 0x0412768b in ?? ()
#58 0x04127155 in ?? ()
#59 0x04127090 in ?? ()
#60 0x03612e50 in ?? ()
#61 0x03621c24 in ?? ()
#62 0x03ff2ca0 in ?? ()
#63 0x03621b72 in ?? ()
#64 0x03621b14 in ?? ()
#65 0x03ff1c14 in ?? ()
#66 0x03ff19b4 in ?? ()
#67 0x03ff1658 in ?? ()
#68 0x022f1250 in ?? ()
#69 0x022f15e7 in ?? ()
#70 0x0000ecf4 in mono_jit_runtime_invoke (method=0x80821c, obj=0x0,
params=0xbffff63c, exc=0x0) at mini.c:5791
#71 0x00184354 in mono_runtime_invoke (method=0x80821c, obj=0x0,
params=0xbffff63c, exc=0x0) at object.c:2755
#72 0x0018a41e in mono_runtime_exec_main (method=0x80821c, args=0x51de00,
exc=0x0) at object.c:3938
#73 0x0007464d in mono_main (argc=2, argv=0xbffff98c) at driver.c:1003
#74 0x00001fd6 in start ()

=================================================================
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.
=================================================================
Comment 20 Leigh McCulloch 2012-06-14 01:11:28 EDT
Hi Duncan,

If version 2.10.9_12 that you linked to the new latest stable release for Mac?
On the website's main download page 2.10.9_11 is listed as the latest.

Kind regards,
Leigh
Comment 21 Duncan Mak 2012-06-14 01:36:23 EDT
Leigh,

If you absolutely need a fix to this bug (libgdiplus issue), then you should go
ahead and use the 2.10.9_12 link I have above, otherwise, that's the only
change between 11 -> 12.

I'll be making a new 2.10.9_13 that includes the libgdiplus fix as well as
updates to the GTK+ stack in the next few days.
Comment 22 Leigh McCulloch 2012-06-14 07:10:44 EDT
Thanks Duncan. Definitely an absolute must for any KeePass 2 user on Mac.
Comment 23 Latif Khalifa 2012-10-31 22:14:27 EDT
This problem is still present in 3.0.0. Duncan's build 2.10.9_12 linked above
works like a charm.

Note You need to log in before you can comment on or make changes to this bug.