[Mono-list] Error in System.Drawing.GDIPlus:GdipDrawLineI when using third party control

Sebastien Pouliot sebastien.pouliot at gmail.com
Tue May 23 20:23:15 EDT 2006


Hello Paddy,

On Tue, 2006-05-23 at 14:26 +1000, Paddy Joy wrote:
> I have been trying to get a third party grid control to work on Mono 
> recently, its the Janus Grid control. However I have hit an error that I 
> can't really debug because I don't have the source of the control.

Well you can probably debug it because you have Mono source code for
both System.Drawing.dll and libgdiplus. Of course not having the control
source code makes it more challenging ;-)

> Anybody got any ideas? 

There's not enough data to get very useful ideas. In fact your email
lacks very basic information, like:
* Mono version being used;
* Libgdiplus version being used;
* Operating system ...

As for debugging it yourself, you can use mono build-in trace tool ("man
mono" and look for --trace) to get an idea where it failed (and get an
idea what the method parameters are).

You can also modify either System.Drawing (C#) or libgdiplus (C) to log
the parameters used to make the call (with more details and/or at the
"right" moment).

> Should I give up and look for an open source 
> alternative?

First things first. If you already invested time and money in this you
should start by asking your vendor. If no one ask for Mono support, then
no vendor will invest the time to make sure their controls works with
Mono.

> Thanks
> Paddy
> 
> 
> Mono System.Windows.Forms Assembly [$auto_build_revision$]
> Keyboard: United States keyboard layout (phantom key version)
> Gtk colorscheme read
> 
> =================================================================
> 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.
> =================================================================
> 
> Stacktrace:
> 
> in (wrapper managed-to-native) System.Drawing.GDIPlus:GdipDrawLineI 
> (intptr,intptr,int,int,int,int) <0x4>
> in (wrapper managed-to-native) System.Drawing.GDIPlus:GdipDrawLineI 
> (intptr,intptr,int,int,int,int) <0xffffffa5>
> in System.Drawing.Graphics:DrawLine (System.Drawing.Pen,int,int,int,int) 
> <0x3d>
> in (wrapper remoting-invoke-with-check) System.Drawing.Graphics:DrawLine 
> (System.Drawing.Pen,int,int,int,int) <0x3668>
> in Janus.Windows.GridEX.Internal.JNSCC:PaintGridlines 
> (System.Drawing.Graphics,Janus.Windows.GridEX.Internal.JNSCK,System.Drawing.Rectangle,bool) 
> <0x240>
> in Janus.Windows.GridEX.Internal.JNSBJ:PaintGridlines 
> (System.Drawing.Graphics,Janus.Windows.GridEX.Internal.JNSCK,System.Drawing.Rectangle) 
> <0x81>
> in Janus.Windows.GridEX.GridEX:b 
> (System.Drawing.Graphics,Janus.Windows.GridEX.Internal.JNSCK,Janus.Windows.GridEX.GridEXFormatStyle,System.Drawing.Rectangle) 
> <0x7c2>
> in Janus.Windows.GridEX.GridEX:a 
> (System.Drawing.Graphics,Janus.Windows.GridEX.Internal.JNSCK,Janus.Windows.GridEX.GridEXFormatStyle) 
> <0xa5>
> in Janus.Windows.GridEX.GridEX:f 
> (System.Drawing.Graphics,Janus.Windows.GridEX.Internal.JNSCJ) <0x9c3>
> in Janus.Windows.GridEX.GridEX:c 
> (System.Drawing.Graphics,Janus.Windows.GridEX.Internal.JNSCJ) <0x4af>
> in Janus.Windows.GridEX.GridEX:g (System.Drawing.Graphics) <0x267>
> in Janus.Windows.GridEX.GridEX:e (System.Drawing.Graphics) <0x43>
> in Janus.Windows.GridEX.GridEX:OnPaint 
> (System.Windows.Forms.PaintEventArgs) <0x137>
> in System.Windows.Forms.Control:WndProc (System.Windows.Forms.Message&) 
> <0x563>
> in Janus.Windows.GridEX.ScrollableBase:WndProc 
> (System.Windows.Forms.Message&) <0x52>
> in ControlNativeWindow:WndProc (System.Windows.Forms.Message&) <0x14>
> in System.Windows.Forms.NativeWindow:WndProc 
> (intptr,System.Windows.Forms.Msg,intptr,intptr) <0x11e>
> in System.Windows.Forms.XplatUIX11:DispatchMessage 
> (System.Windows.Forms.MSG&) <0x16>
> in System.Windows.Forms.XplatUI:DispatchMessage 
> (System.Windows.Forms.MSG&) <0x15>
> in System.Windows.Forms.Application:RunLoop 
> (bool,System.Windows.Forms.ApplicationContext) <0x614>
> in System.Windows.Forms.Application:Run (System.Windows.Forms.Form) <0x24>
> in JanusTest.Form1:Main () <0x1f>
> in (wrapper runtime-invoke) System.Object:runtime_invoke_void 
> (object,intptr,intptr,intptr) <0x7d085f9>
> 
> Native stacktrace:
> 
>     mono(mono_handle_native_sigsegv+0xbf) [0x81547ef]
>     mono [0x8122498]
>     [0x9c8440]
>     /usr/local/lib/libgdiplus.so(gdip_pen_setup+0x3f) [0x81674f]
>     /usr/local/lib/libgdiplus.so(GdipDrawLine+0x118) [0x801ba8]
>     /usr/local/lib/libgdiplus.so(GdipDrawLineI+0x40) [0x801c90]
>     [0xbd1364]
>     [0xbd12ce]
>     [0xbd124e]
>     [0xbd4821]
>     [0xbd4592]
>     [0xbc8ae3]
>     [0xbc8316]
>     [0xbd2244]
>     [0xbc7508]
>     [0xbc6b38]
>     [0xbc63f4]
>     [0x223c40]
>     [0x699654]
>     [0x6990a3]
>     [0x699045]
>     [0xe45ec7]
>     [0x222917]
>     [0x2228f6]
>     [0x216c65]
>     [0x216615]
>     [0x3b6708]
>     [0x3b57be]
>     mono(mono_runtime_exec_main+0x62) [0x80bdd92]
>     mono(mono_runtime_run_main+0x152) [0x80beef2]
>     mono(mono_main+0xe46) [0x805d106]
>     mono [0x805bdb2]
>     /lib/libc.so.6(__libc_start_main+0xdc) [0x9fb724]
>     mono [0x805bd01]
> 
> _______________________________________________
> Mono-list maillist  -  Mono-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-list



More information about the Mono-list mailing list