summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Pitoiset <[email protected]>2017-05-31 14:18:00 +0200
committerSamuel Pitoiset <[email protected]>2017-06-07 11:03:53 +0200
commitb019c4e6e833d41c24043144ac24986dd3e9a4eb (patch)
tree41399f927501335281f653a4eb57694837752fe0
parent9ab285e58858a87965fe62f2a6f2d0642ce81624 (diff)
mesa: add KHR_no_error support for glInvalidateBufferData()
Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Timothy Arceri <[email protected]>
-rw-r--r--src/mapi/glapi/gen/ARB_invalidate_subdata.xml2
-rw-r--r--src/mesa/main/bufferobj.c9
-rw-r--r--src/mesa/main/bufferobj.h3
3 files changed, 13 insertions, 1 deletions
diff --git a/src/mapi/glapi/gen/ARB_invalidate_subdata.xml b/src/mapi/glapi/gen/ARB_invalidate_subdata.xml
index 79e8a917f58..2cbc4f63be7 100644
--- a/src/mapi/glapi/gen/ARB_invalidate_subdata.xml
+++ b/src/mapi/glapi/gen/ARB_invalidate_subdata.xml
@@ -25,7 +25,7 @@
<param name="length" type="GLsizeiptr"/>
</function>
- <function name="InvalidateBufferData">
+ <function name="InvalidateBufferData" no_error="true">
<param name="buffer" type="GLuint"/>
</function>
diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c
index f11d6118d66..9304308eabf 100644
--- a/src/mesa/main/bufferobj.c
+++ b/src/mesa/main/bufferobj.c
@@ -4309,6 +4309,15 @@ _mesa_InvalidateBufferSubData(GLuint buffer, GLintptr offset,
}
void GLAPIENTRY
+_mesa_InvalidateBufferData_no_error(GLuint buffer)
+{
+ GET_CURRENT_CONTEXT(ctx);
+
+ struct gl_buffer_object *bufObj =_mesa_lookup_bufferobj(ctx, buffer);
+ invalidate_buffer_subdata(ctx, bufObj, 0, bufObj->Size);
+}
+
+void GLAPIENTRY
_mesa_InvalidateBufferData(GLuint buffer)
{
GET_CURRENT_CONTEXT(ctx);
diff --git a/src/mesa/main/bufferobj.h b/src/mesa/main/bufferobj.h
index 2e49d33b8d3..a8e174dc6b1 100644
--- a/src/mesa/main/bufferobj.h
+++ b/src/mesa/main/bufferobj.h
@@ -348,6 +348,9 @@ _mesa_InvalidateBufferSubData(GLuint buffer, GLintptr offset,
GLsizeiptr length);
void GLAPIENTRY
+_mesa_InvalidateBufferData_no_error(GLuint buffer);
+
+void GLAPIENTRY
_mesa_InvalidateBufferData(GLuint buffer);
void GLAPIENTRY