http://bugs.winehq.org/show_bug.cgi?id=19659
--- Comment #24 from Colin Wetherbee cww@denterprises.org 2010-01-07 23:56:19 --- (In reply to comment #23)
Can anyone try to set the DOUBLEBUFFER buffer flag in buffer_init() in buffer.c? This is a hack that gets crysis working again - it might give hints for this bug.
I tried this by putting "buffer->flags |= WINED3D_BUFFER_DOUBLEBUFFER;" near the top of buffer_init(). It doesn't seem to change anything, though.
(Also, would you recommend some other way of forcing double-buffering?)
Also please make some +d3d,+tid log. It is possible that the issues are caused by the app calling Unmap() from a different thread than map().
Sure, I'll see what I can do. I'm grabbing the latest git source right now.
Here's the log I got. It's 15 MB uncompressed and comes from the Wine source in git at around 2010-01-08 04:30 UTC.
http://colinwetherbee.com/data/eq2-wine-debug-2010010700.bz2
The command line I used for this log was:
WINEDEBUG=+d3d,+tid WINEPREFIX=$HOME/local/lib/wine-git ~/local/wine-git/bin/wine EverQuest2.exe 2>&1 | bzip2 > /tmp/eq2-wine-debug-2010010700.bz2
My gut feeling is that the crash in this log is caused by something *other* than the problem described in this bug, though. I don't think Wine got far enough into the game before crashing.
I also tried with the Wine 1.1.35 and saw similar results. There may be another regression that was introduced between 1.1.30 (the last time I tried this) and 1.1.35... I will not have a chance to check tonight, but I'll try to keep it in mind when I'm looking for things to do this weekend. :)