[Bug 29008] New: Age of Wonders fails to run because of a floating point error

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Nov 6 12:25:35 CST 2011


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

             Bug #: 29008
           Summary: Age of Wonders fails to run because of a floating
                    point error
           Product: Wine
           Version: 1.3.32
          Platform: x86
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: directx-ddraw
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: stefan at codeweavers.com
    Classification: Unclassified


Age of Wonders does not start because of a floating point exception during
wined3d initialization. This is a regression caused by this patch:

7b0ba5153f3e42f31b922e5eb997d5e1d0cb44d4 is the first bad commit
commit 7b0ba5153f3e42f31b922e5eb997d5e1d0cb44d4
Author: Matteo Bruni <mbruni at codeweavers.com>
Date:   Thu Nov 3 15:26:36 2011 +0100

    wined3d: Test more thoroughly for post-pixelshader blending support, try on
more texture formats.

This problem happens is quite complicated: Before initializing DirectDraw, the
game changes the FPU control word and removes the FPCW$INVALID flag(0x0001),
among others. During wined3d initialization wined3d tests if WINED3DFMT_UYVY is
FBO attachable, which is true because we emulate it with GL_LUMINANCE_ALPHA.
After that the new code added by the patch tries to draw to it, which
apparently generates a NaN somewhere, and since the game disallowed them an
exception is raised. The full FPU control word that is set when
DirectDrawCreate is called is 0x1372.

The game pops up an error dialog and tries to initialize DirectDraw again, and
is stuck in a loop from this point on. It isn't even necessary to install the
game to reproduce this issue, the aowsetup.exe program on the CD has the same
crash.

The problem is not related to WINED3DFMT_UYVY per se, the other luminance-alpha
formats like WINED3DFMT_YUY2, WINED3DFMT_L8A8 and WINED3DFMT_L4A4 affected as
well.

My GPU driver is the Nvidia binary driver, version 290.06, on a GeForce 9600M
GPU. A while ago this driver didn't support luminance-alpha fbo attachments,
apparently this changed somewhen.

-- 
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