Alexander Dorofeyev : wined3d: Set isInDraw later in drawPrimitive.

Alexandre Julliard julliard at winehq.org
Tue Apr 8 06:38:27 CDT 2008


Module: wine
Branch: master
Commit: 7c8b8e0a9319c53eb0602c0e5ab12da0b83b9ee5
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=7c8b8e0a9319c53eb0602c0e5ab12da0b83b9ee5

Author: Alexander Dorofeyev <alexd4 at inbox.lv>
Date:   Tue Apr  8 00:42:39 2008 +0300

wined3d: Set isInDraw later in drawPrimitive.

This should fix the problem that in LoadLocation SFLAG_INTEXTURE path gl calls 
can be made without activating context, due to isInDraw checks.

---

 dlls/wined3d/drawprim.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
index 37482fb..77b396a 100644
--- a/dlls/wined3d/drawprim.c
+++ b/dlls/wined3d/drawprim.c
@@ -986,9 +986,6 @@ void drawPrimitive(IWineD3DDevice *iface,
 
     if (NumPrimitives == 0) return;
 
-    /* Signals other modules that a drawing is in progress and the stateblock finalized */
-    This->isInDraw = TRUE;
-
     /* Invalidate the back buffer memory so LockRect will read it the next time */
     for(i = 0; i < GL_LIMITS(buffers); i++) {
         target = (IWineD3DSurfaceImpl *) This->render_targets[i];
@@ -1032,6 +1029,9 @@ void drawPrimitive(IWineD3DDevice *iface,
         }
     }
 
+    /* Signals other modules that a drawing is in progress and the stateblock finalized */
+    This->isInDraw = TRUE;
+
     /* Ok, we will be updating the screen from here onwards so grab the lock */
 
     if (wined3d_settings.offscreen_rendering_mode == ORM_FBO) {




More information about the wine-cvs mailing list