Mesa (master): mesa/bufferobj: use mapping range in BufferSubData.

Dave Airlie airlied at kemper.freedesktop.org
Wed Jun 1 03:31:00 UTC 2016


Module: Mesa
Branch: master
Commit: e891f7cf55f2f3e3d37ece12e5c64f4be70e3845
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e891f7cf55f2f3e3d37ece12e5c64f4be70e3845

Author: Dave Airlie <airlied at redhat.com>
Date:   Wed May 25 14:02:27 2016 +1000

mesa/bufferobj: use mapping range in BufferSubData.

According to GL4.5 spec:
An INVALID_OPERATION error is generated if any part of the speci-
fied buffer range is mapped with MapBufferRange or MapBuffer (see sec-
tion 6.3), unless it was mapped with MAP_PERSISTENT_BIT set in the Map-
BufferRange access flags.

So we should use the if range is mapped path.

This fixes:
GL45-CTS.buffer_storage.map_persistent_buffer_sub_data

Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
Cc: "12.0, 11.2" <mesa-stable at lists.freedesktop.org>
Signed-off-by: Dave Airlie <airlied at redhat.com>

---

 src/mesa/main/bufferobj.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c
index 33bc574..795cb16 100644
--- a/src/mesa/main/bufferobj.c
+++ b/src/mesa/main/bufferobj.c
@@ -1765,7 +1765,7 @@ _mesa_buffer_sub_data(struct gl_context *ctx, struct gl_buffer_object *bufObj,
                       const char *func)
 {
    if (!buffer_object_subdata_range_good(ctx, bufObj, offset, size,
-                                         false, func)) {
+                                         true, func)) {
       /* error already recorded */
       return;
    }




More information about the mesa-commit mailing list