intel: Fix bad read/write flags on self-copies for glCopyBufferSubData().
authorEric Anholt <eric@anholt.net>
Wed, 28 Dec 2011 00:42:44 +0000 (16:42 -0800)
committerEric Anholt <eric@anholt.net>
Wed, 4 Jan 2012 17:51:17 +0000 (09:51 -0800)
We didn't consume these flags in any way that would produce a
functional difference, but we might have some day.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/intel/intel_buffer_objects.c

index 4a1a8165be5c25e105a1361d0573fa9deee7c503..9b1f642c0f184ec3a34e1da7d2cbc7d11afb209b 100644 (file)
@@ -663,7 +663,9 @@ intel_bufferobj_copy_subdata(struct gl_context *ctx,
        */
       if (src == dst) {
         char *ptr = intel_bufferobj_map_range(ctx, 0, dst->Size,
-                                              GL_MAP_READ_BIT, dst);
+                                              GL_MAP_READ_BIT |
+                                              GL_MAP_WRITE_BIT,
+                                              dst);
         memmove(ptr + write_offset, ptr + read_offset, size);
         intel_bufferobj_unmap(ctx, dst);
       } else {