From: Dave Airlie <airl...@redhat.com>

(I've already pushed this by accident, if its bad I can revert it).

this seems like a logical thing to do and sets the correct st flags
for vertex textures.

Signed-off-by: Dave Airlie <airl...@redhat.com>
---
 src/mesa/state_tracker/st_atom.c         |    1 +
 src/mesa/state_tracker/st_atom.h         |    1 +
 src/mesa/state_tracker/st_atom_texture.c |   18 ++++++++++--------
 3 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/src/mesa/state_tracker/st_atom.c b/src/mesa/state_tracker/st_atom.c
index bf160fe..e1eac81 100644
--- a/src/mesa/state_tracker/st_atom.c
+++ b/src/mesa/state_tracker/st_atom.c
@@ -56,6 +56,7 @@ static const struct st_tracked_state *atoms[] =
    &st_update_scissor,
    &st_update_blend,
    &st_update_sampler,
+   &st_update_vertex_texture,
    &st_update_texture,
    &st_update_framebuffer,
    &st_update_msaa,
diff --git a/src/mesa/state_tracker/st_atom.h b/src/mesa/state_tracker/st_atom.h
index 6a5ea36..930a084 100644
--- a/src/mesa/state_tracker/st_atom.h
+++ b/src/mesa/state_tracker/st_atom.h
@@ -60,6 +60,7 @@ extern const struct st_tracked_state st_update_blend;
 extern const struct st_tracked_state st_update_msaa;
 extern const struct st_tracked_state st_update_sampler;
 extern const struct st_tracked_state st_update_texture;
+extern const struct st_tracked_state st_update_vertex_texture;
 extern const struct st_tracked_state st_finalize_textures;
 extern const struct st_tracked_state st_update_fs_constants;
 extern const struct st_tracked_state st_update_gs_constants;
diff --git a/src/mesa/state_tracker/st_atom_texture.c 
b/src/mesa/state_tracker/st_atom_texture.c
index 990b504..072eb97 100644
--- a/src/mesa/state_tracker/st_atom_texture.c
+++ b/src/mesa/state_tracker/st_atom_texture.c
@@ -317,20 +317,22 @@ update_fragment_textures(struct st_context *st)
                                   st->state.sampler_views);
 }
 
-static void 
-update_textures(struct st_context *st)
-{
-  update_fragment_textures(st);
-  update_vertex_textures(st);
-}
-
 const struct st_tracked_state st_update_texture = {
    "st_update_texture",                                        /* name */
    {                                                   /* dirty */
       _NEW_TEXTURE,                                    /* mesa */
       ST_NEW_FRAGMENT_PROGRAM,                         /* st */
    },
-   update_textures                                     /* update */
+   update_fragment_textures                            /* update */
+};
+
+const struct st_tracked_state st_update_vertex_texture = {
+   "st_update_vertex_texture",                                 /* name */
+   {                                                   /* dirty */
+      _NEW_TEXTURE,                                    /* mesa */
+      ST_NEW_VERTEX_PROGRAM,                           /* st */
+   },
+   update_vertex_textures                              /* update */
 };
 
 static void 
-- 
1.7.5.1

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to