http://bugs.winehq.org/show_bug.cgi?id=22657
GyB gyebro69@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |gyebro69@gmail.com
--- Comment #4 from GyB gyebro69@gmail.com 2010-05-17 09:37:54 --- The same commit causes the game Europa 1400: The Guild (Gold Edition) to freeze after a couple of minutes of gameplay in Wine-1.1.44.
Symptom: In normal game mode the game hangs after 5-10 minutes. The console is flooded with the following lines of messages (they're repeated forever):
fixme:d3d:context_check_fbo_status FBO status GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT (0x8cd7) fixme:d3d:context_check_fbo_status Color attachment 0: (0x12c4d8) WINED3DFMT_B5G6R5_UNORM 1024x768 fixme:d3d:context_check_fbo_status Depth attachment: (0x1460c8) WINED3DFMT_D32_UNORM 1024x768 err:d3d_draw:drawStridedFast >>>>>>>>>>>>>>>>> GL_INVALID_FRAMEBUFFER_OPERATION (0x506) from glDrawElements @ drawprim.c / 47
I guess the issue has something to do with the lights and shadows which dynamically change according to the time of day in the game. A quicker way to trigger the issue: when I use the game's 'time acceleration' feature the shadows are changing more rapidly and the hanging occurs in 20-30 seconds.
The issue was not present prior to 1.1.44. Regression testing resulted the same commit:
commit 7a2debe113198fab0756dab5a3d1ecf7550c5a9f Author: Henri Verbeet hverbeet@codeweavers.com Date: Wed May 5 18:22:36 2010 +0200
wined3d: Use the FBO cache in swapchain_blit().
Reverting the patch on top of wine-1.1.44-170-g69326aa was successful and fixed the issue. Disabling shadows in the game also prevents the game from hanging.