From: Samuel Pitoiset Date: Wed, 29 Mar 2017 14:29:24 +0000 (+0200) Subject: mesa: refuse to change tex buffers when a handle is allocated X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=41257fddc8843e800e3f1c61ccf1862cf81d3333;p=mesa.git mesa: refuse to change tex buffers when a handle is allocated The ARB_bindless_texture spec says: "The error INVALID_OPERATION is generated by BufferData if it is called to modify a buffer object bound to a buffer texture while that texture object is referenced by one or more texture handles." Signed-off-by: Samuel Pitoiset Reviewed-by: Nicolai Hähnle --- diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c index e66a3a56688..bb2f0d9d9d4 100644 --- a/src/mesa/main/bufferobj.c +++ b/src/mesa/main/bufferobj.c @@ -1562,7 +1562,7 @@ validate_buffer_storage(struct gl_context *ctx, return false; } - if (bufObj->Immutable) { + if (bufObj->Immutable || bufObj->HandleAllocated) { _mesa_error(ctx, GL_INVALID_OPERATION, "%s(immutable)", func); return false; } @@ -1726,7 +1726,7 @@ _mesa_buffer_data(struct gl_context *ctx, struct gl_buffer_object *bufObj, return; } - if (bufObj->Immutable) { + if (bufObj->Immutable || bufObj->HandleAllocated) { _mesa_error(ctx, GL_INVALID_OPERATION, "%s(immutable)", func); return; }