[Bug 8797] New: d3d/ddraw related Applications crashes on startup if WINEDEBUG+=relay was not set.

Wine Bugs wine-bugs at winehq.org
Mon Jun 25 17:59:43 CDT 2007


           Summary: d3d/ddraw related Applications crashes on startup if
                    WINEDEBUG+=relay was not set.
           Product: Wine
           Version: 0.9.39.
          Platform: Other
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: wine-loader
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: ErV2005 at rambler.ru

After upgrading wine (from 0.9.37 to 0.9.38 or from 0.9.38 to 0.9.39 - I'm not 
sure) many graphical applications started crashing if WINEDEBUG+=all or 
WINEDEBUG+=relay not set and work fine if WINEDEBUG was specified Among those 
applications are Postal 1, Kiosaky's Cashflow 101, .kkreiger and probably more. 
I'm not sure if this is a bug in Wine or a problem in my system, because 
uninstalling and downgrading (even to 0.9.34) didn't help - problem now exists 
in other versions as well. Applications crash in a "windows way" - with access 
violation at address 0x7XXXXXXX. (Example output produced by .kkreiger will be 
attached(avaliable at http://www.theprodukkt.com/))
But .kkreiger works fine if started as
WINEDEBUG=+relay wine wine pno001.exe &>/dev/null
This application worked fine before and didn't need those flags.

Kyosaky's Cashflow 101 crashes with a windows message box which says "Unhandled 
exceptionL c0000005 At address: 7ce2f9ce".but works fine if started with 

same thing with Postal 1.

There are also problems with an Alien vs Predator 2 game and some other apps 
that enumerate D3D display modes:
if program has a listbox where videomodes can be selected, this box will 
contain no strings (alien vs. predator, ragnarok online, some other apps), if 
WINEDEBUG+=all is not set. Can these problems be connected with those crashes?
I was able to find where crash occurs, but didn't yet find why this happens. 
I've used one of my own ddraw test applications (written for windows) that 
produces same result - crashes if WINEDEBUG+=relay is not set, and works if 
it is set. Source code is at the end of message. (Both application and it's 
source code will be added as attachments)
For Wine - 0.9.39:
When initializing DirectDraw by using DirectDrawCreateEx, DDRAW_Create calls 
LoadLibraryA with argument "wined3d". Crash occurs during LoadLibraryA call, 
not in wined3d, but in ntdll/loader.c, in get_modref() function, at the "return 
cached_modref = CONTAINING_RECORD(mod, WINE_MODREF, ldr);" line.
It looks like (somewhere between LoadLibraryA and get_modref()) there is  a 
problem with a "if (TRACE_ON())", but I'm not sure if this so, and where should 
I look for this problem. And I still don't know why it worked before and 
suddenly stopped working. (I'm marking this as loader bug, because crash 
occurse while loading a dll) Any suggestions about location of this bug?

With best regards, Victor Eremin.

Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

More information about the wine-bugs mailing list