OSDN Git Service

st/nine: Fix BASETEX_REGISTER_UPDATE
authorAxel Davy <axel.davy@ens.fr>
Sun, 6 Nov 2016 11:06:22 +0000 (12:06 +0100)
committerAxel Davy <axel.davy@ens.fr>
Tue, 20 Dec 2016 22:44:23 +0000 (23:44 +0100)
BASETEX_REGISTER_UPDATE was adding the texture to the list
of textures to upload in too many cases. tex->base.base.bind
will be set to true if the texture is in a stateblock, whereas
we want to upload only if bound to the device, which is
what bind_count is for.

Signed-off-by: Axel Davy <axel.davy@ens.fr>
src/gallium/state_trackers/nine/basetexture9.h

index 35cfbff..10a7cea 100644 (file)
@@ -159,7 +159,7 @@ NineBaseTexture9_Dump( struct NineBaseTexture9 *This ) { }
 #endif
 
 #define BASETEX_REGISTER_UPDATE(t) do { \
-    if (((t)->managed.dirty | ((t)->dirty_mip)) && (t)->base.base.bind) \
+    if (((t)->managed.dirty | ((t)->dirty_mip)) && (t)->bind_count) \
         if (LIST_IS_EMPTY(&(t)->list)) \
             list_add(&(t)->list, &(t)->base.base.device->update_textures); \
     } while(0)