wined3d: Buffer object ID's are supposed to be unsigned.

Henri Verbeet hverbeet at codeweavers.com
Mon Mar 9 08:31:28 CDT 2009


---
 dlls/wined3d/state.c     |    8 ++++----
 include/wine/wined3d.idl |    2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
index c791081..d26f5f1 100644
--- a/dlls/wined3d/state.c
+++ b/dlls/wined3d/state.c
@@ -3047,7 +3047,7 @@ static void unloadTexCoords(IWineD3DStateBlockImpl *stateblock) {
     }
 }
 
-static void loadTexCoords(IWineD3DStateBlockImpl *stateblock, const WineDirect3DVertexStridedData *sd, GLint *curVBO)
+static void loadTexCoords(IWineD3DStateBlockImpl *stateblock, const WineDirect3DVertexStridedData *sd, GLuint *curVBO)
 {
     const UINT *offset = stateblock->streamOffset;
     unsigned int mapped_stage = 0;
@@ -3251,7 +3251,7 @@ static void tex_coordindex(DWORD state, IWineD3DStateBlockImpl *stateblock, Wine
          * and do all the things linked to it
          * TODO: Tidy that up to reload only the arrays of the changed unit
          */
-        GLint curVBO = GL_SUPPORT(ARB_VERTEX_BUFFER_OBJECT) ? -1 : 0;
+        GLuint curVBO = GL_SUPPORT(ARB_VERTEX_BUFFER_OBJECT) ? ~0U : 0;
 
         unloadTexCoords(stateblock);
         loadTexCoords(stateblock, &stateblock->wineD3DDevice->strided_streams, &curVBO);
@@ -3839,7 +3839,7 @@ static inline void unloadNumberedArrays(IWineD3DStateBlockImpl *stateblock, Wine
 static inline void loadNumberedArrays(IWineD3DStateBlockImpl *stateblock,
         const WineDirect3DVertexStridedData *strided, WineD3DContext *context)
 {
-    GLint curVBO = GL_SUPPORT(ARB_VERTEX_BUFFER_OBJECT) ? -1 : 0;
+    GLuint curVBO = GL_SUPPORT(ARB_VERTEX_BUFFER_OBJECT) ? ~0U : 0;
     int i;
     const UINT *offset = stateblock->streamOffset;
     struct wined3d_buffer *vb;
@@ -4014,7 +4014,7 @@ static inline void loadNumberedArrays(IWineD3DStateBlockImpl *stateblock,
 static void loadVertexData(IWineD3DStateBlockImpl *stateblock, const WineDirect3DVertexStridedData *sd)
 {
     const UINT *offset = stateblock->streamOffset;
-    GLint curVBO = GL_SUPPORT(ARB_VERTEX_BUFFER_OBJECT) ? -1 : 0;
+    GLuint curVBO = GL_SUPPORT(ARB_VERTEX_BUFFER_OBJECT) ? ~0U : 0;
 
     TRACE("Using fast vertex array code\n");
 
diff --git a/include/wine/wined3d.idl b/include/wine/wined3d.idl
index e2aab21..b2ecfa0 100644
--- a/include/wine/wined3d.idl
+++ b/include/wine/wined3d.idl
@@ -1921,7 +1921,7 @@ typedef struct WineDirect3DStridedData
     const BYTE *lpData; /* Pointer to start of data */
     DWORD dwStride;     /* Stride between occurrences of this data */
     DWORD dwType;       /* Type (as in D3DVSDT_TYPE) */
-    int VBO;            /* Vertex buffer object this data is in */
+    unsigned int VBO;   /* Vertex buffer object this data is in */
     UINT streamNo;      /* D3D stream number */
 } WineDirect3DStridedData;
 
-- 
1.6.0.6



--------------070409020307060300060308--



More information about the wine-patches mailing list