[Bug 23759] FlarmCfgTool crashes on launch (GdipTranslateLineTransform stub)

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Aug 1 09:54:14 CDT 2010


http://bugs.winehq.org/show_bug.cgi?id=23759


Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |focht at gmx.net
          Component|-unknown                    |gdiplus
            Summary|FlarmCfgTool crashes on     |FlarmCfgTool crashes on
                   |launch                      |launch
                   |                            |(GdipTranslateLineTransform
                   |                            |stub)




--- Comment #8 from Anastasius Focht <focht at gmx.net>  2010-08-01 09:54:13 ---
Hello,

I only see gdiplus insufficiency if you use a recent Wine version and start
with a clean WINEPREFIX.
You can either use MS .NET Framework 2.0 (winetricks) or Mono 2.6

The app is Xenocode wrapped so technically it wouldn't need any of both
(already includes necessary .NET 2.0 assemblies) but due packaging it relies on
a .NET CLR bootstrapper being present.
Wine's mscoree implementation is Mono specific (_CorExeMain) that won't trigger
Xenocode magic/hooks to reroute assembly loads to it's sandboxed versions.

Anyway, lets this make a gdiplus bug as no one exists yet to cover that unimpl.
stub specifically.

Wine trace log (don't use +relay, it will interfere with Xenocode native API
hooks):

--- snip ---
...
0037:fixme:gdiplus:GdipTranslateLineTransform stub: 0x1a9f90 741.000000
619.000000 0
...
0037:trace:seh:raise_exception code=e0434f4d flags=1 addr=0x7b835ad2
ip=7b835ad2 tid=0037
0037:trace:seh:raise_exception  info[0]=80004001
0037:trace:seh:raise_exception  eax=7b824eb1 ebx=7b881ed8 ecx=00000000
edx=e0434f4d esi=e0434f4d edi=e0434f4d
0037:trace:seh:raise_exception  ebp=0032da64 esp=0032da00 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00000246 
--- snip ---

Managed callstack:

--- snip ---
System.NotImplementedException: Not implemented.
   at System.Drawing.Drawing2D.LinearGradientBrush.TranslateTransform(Single
dx, Single dy, MatrixOrder order)
   at System.Drawing.Drawing2D.LinearGradientBrush.TranslateTransform(Single
dx, Single dy)
   at
System.Windows.Forms.ToolStripProfessionalRenderer.RenderBackgroundGradient(Graphics
g, Control control, Color beginColor, Color endColor, Orientation orientation)
   at
System.Windows.Forms.ToolStripProfessionalRenderer.RenderMenuStripBackground(ToolStripRenderEventArgs
e)
   at
System.Windows.Forms.ToolStripProfessionalRenderer.OnRenderToolStripBackground(ToolStripRenderEventArgs
e)
   at
System.Windows.Forms.ToolStripRenderer.DrawToolStripBackground(ToolStripRenderEventArgs
e)
   at System.Windows.Forms.ToolStrip.OnPaintBackground(PaintEventArgs e)
   at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e,
Int16 layer, Boolean disposeEventArgs)
   at System.Windows.Forms.Control.WmPaint(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ToolStrip.WndProc(Message& m)
   at System.Windows.Forms.MenuStrip.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr
wparam, IntPtr lparam)
--- snip ---

The stub:

--- snip dlls/gdiplus/brush.c ---
GpStatus WINGDIPAPI GdipTranslateLineTransform(GpLineGradient* brush,
        REAL dx, REAL dy, GpMatrixOrder order)
{
    FIXME("stub: %p %f %f %d\n", brush, dx, dy, order);

    return NotImplemented;
}

--- snip dlls/gdiplus/brush.c ---

Preferring native over builtin/'winetricks gdiplus' obviously works around.

Regards

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list