http://bugs.winehq.org/show_bug.cgi?id=21243
--- Comment #4 from joaopa jeremielapuree@yahoo.fr 2010-11-07 12:21:51 CST --- Created an attachment (id=31783) --> (http://bugs.winehq.org/attachment.cgi?id=31783) cxonsole output with +d3d7,+ddraw debug channels enabled without directdrawrenderer set
I think both problems are the same (directdrawrenderere and crash when directdrawrenderer set to opengl)
What happens is a surface is released (its ref==0). Then ddray->ImplType is set to 0 (Wined3dSurfType=UnknownSurface) So, Wine complains it needs opengl surface
Moreover this surface is a target surface, but now it is NULL (it was just released)
So in the line prev =device->render_targets[render_target_idx]; (file dlls/ddraw/device line 5672) device->render_targets is null
and then wine crashes because it wants to reach the first element of the array device->render_targets, that does not exist.
I m afraid it is probably a refcount issue. Unfortunately these kind of errors are one of the most difficult to fix :( :(
But maybe I am wrong (I hope :D :D).