Revert "vbo: avoid getting buffer_ptr and buffer_map out of sync"
authorKeith Whitwell <keithw@vmware.com>
Wed, 4 Mar 2009 16:09:14 +0000 (16:09 +0000)
committerKeith Whitwell <keithw@vmware.com>
Wed, 4 Mar 2009 16:09:14 +0000 (16:09 +0000)
This fixed a minor bug but broke everything else.

This reverts commit 579ef8ab1984d895867f547afa60b3bec4c4599a.

src/mesa/vbo/vbo_exec_api.c
src/mesa/vbo/vbo_exec_draw.c

index a1e66aec63d237e62126641dc3dfb0c0977d31bf..9c2d0659139ff39d196e9951dbdbb591b6765198 100644 (file)
@@ -675,7 +675,6 @@ void vbo_use_buffer_objects(GLcontext *ctx)
    if (exec->vtx.buffer_map) {
       _mesa_align_free(exec->vtx.buffer_map);
       exec->vtx.buffer_map = NULL;
-      exec->vtx.buffer_ptr = NULL;
    }
 
    /* Allocate a real buffer object now */
@@ -701,7 +700,6 @@ void vbo_exec_vtx_init( struct vbo_exec_context *exec )
 
    ASSERT(!exec->vtx.buffer_map);
    exec->vtx.buffer_map = (GLfloat *)ALIGN_MALLOC(VBO_VERT_BUFFER_SIZE, 64);
-   exec->vtx.buffer_ptr = exec->vtx.buffer_map;
 
    vbo_exec_vtxfmt_init( exec );
 
@@ -737,7 +735,6 @@ void vbo_exec_vtx_destroy( struct vbo_exec_context *exec )
       if (exec->vtx.buffer_map) {
          ALIGN_FREE(exec->vtx.buffer_map);
          exec->vtx.buffer_map = NULL;
-         exec->vtx.buffer_ptr = NULL;
       }
    }
 }
index 4b44b30b325ea6f900c20a522736b00f4eb03b58..38b6c56f47905ff55dbc1bc86909fc6e17ba001a 100644 (file)
@@ -243,10 +243,7 @@ static void vbo_exec_vtx_unmap( struct vbo_exec_context *exec )
 
       exec->vtx.buffer_used += (exec->vtx.buffer_ptr -
                                 exec->vtx.buffer_map) * sizeof(float);
-
-       
-      assert(exec->vtx.buffer_ptr != NULL);
-      
+            
       ctx->Driver.UnmapBuffer(ctx, target, exec->vtx.bufferobj);
       exec->vtx.buffer_map = NULL;
       exec->vtx.buffer_ptr = NULL;
@@ -299,7 +296,6 @@ void vbo_exec_vtx_map( struct vbo_exec_context *exec )
          (GLfloat *)ctx->Driver.MapBuffer(ctx, target, access, exec->vtx.bufferobj);
    }
 
-   exec->vtx.buffer_ptr = exec->vtx.buffer_map;
    if (0) _mesa_printf("map %d..\n", exec->vtx.buffer_used);
 }