Matteo Bruni : wined3d: Force stream info update on vertex shader change.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Mar 18 10:26:29 CDT 2015


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

Author: Matteo Bruni <mbruni at codeweavers.com>
Date:   Tue Mar 17 15:52:13 2015 +0100

wined3d: Force stream info update on vertex shader change.

---

 dlls/wined3d/context.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
index af29e69..9cc68ab 100644
--- a/dlls/wined3d/context.c
+++ b/dlls/wined3d/context.c
@@ -3048,7 +3048,12 @@ BOOL context_apply_draw_state(struct wined3d_context *context, struct wined3d_de
      * updating a resource location. */
     context_update_tex_unit_map(context, state);
     context_preload_textures(context, state);
-    if (isStateDirty(context, STATE_VDECL) || isStateDirty(context, STATE_STREAMSRC))
+    /* TODO: Right now the dependency on the vertex shader is necessary
+     * since context_stream_info_from_declaration depends on the reg_maps of
+     * the current VS but maybe it's possible to relax the coupling in some
+     * situations at least. */
+    if (isStateDirty(context, STATE_VDECL) || isStateDirty(context, STATE_STREAMSRC)
+            || isStateDirty(context, STATE_SHADER(WINED3D_SHADER_TYPE_VERTEX)))
     {
         context_update_stream_info(context, state);
     }




More information about the wine-cvs mailing list