i915: Fix assertion failure on remapping a non-BO-backed VBO.
authorEric Anholt <eric@anholt.net>
Tue, 30 Jun 2009 01:48:27 +0000 (18:48 -0700)
committerEric Anholt <eric@anholt.net>
Tue, 30 Jun 2009 20:29:37 +0000 (13:29 -0700)
Failure to set the obj->Pointer back to null tripped up the assertion.
Bug #22428.
(cherry picked from commit 57a06d3a48c9af1067ec05e3ad96c58f4b9b99be)

src/mesa/drivers/dri/intel/intel_buffer_objects.c

index c31fe91ad62d9e7d8d1910e677e80b68a7dfc6ae..2e6b77824dfa46e70ec8180babe41ae53d94fd22 100644 (file)
@@ -265,7 +265,10 @@ intel_bufferobj_unmap(GLcontext * ctx,
    struct intel_buffer_object *intel_obj = intel_buffer_object(obj);
 
    assert(intel_obj);
-   if (intel_obj->buffer != NULL) {
+   if (intel_obj->sys_buffer != NULL) {
+      assert(obj->Pointer);
+      obj->Pointer = NULL;
+   } else if (intel_obj->buffer != NULL) {
       assert(obj->Pointer);
       if (intel_obj->mapped_gtt) {
         drm_intel_gem_bo_unmap_gtt(intel_obj->buffer);