Strange crash

Dmitry Timoshkov dmitry at sloboda.ru
Tue Apr 17 22:54:37 CDT 2001


"Rein Klazes" <rklazes at xs4all.nl> wrote:

> > Exception occurs when pen->logpen.lopnWidth.x = 0 and dc->xformWorld2Vport.eM11 = 0.0
> > It's very strange. Attached patch helps to eliminate crash. But I don't understand
> > where the source of problem.
> 
> | 0x40897fde (X11DRV_PEN_SelectObject+0x8e [pen.c:69]): fldcw 0xfffffffe(%edx)
> 
> This instruction loads the control status word with a new value. Bit 5
> of the CW (0x20) ,PM Precision Mask , is the mask bit for this
> exception.
> 
> Find out how this bit has become zero (disassembly of the instructions
> before the crash). If I put a breakpoint on the instruction above, the
> CW is loaded with 0x37f: all FP exceptions are off.

I have attached full assembly listing of graphics/x11drv/pen.c produced by gcc.
I removed -g option to reduce the output size and added -S -fverbose-asm.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pen.s
Type: application/octet-stream
Size: 4372 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20010418/50401e00/pen.obj


More information about the wine-devel mailing list