summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--progs/tests/getprocaddress.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/progs/tests/getprocaddress.c b/progs/tests/getprocaddress.c
index 38ca7000df..1ff6f29a6f 100644
--- a/progs/tests/getprocaddress.c
+++ b/progs/tests/getprocaddress.c
@@ -1189,6 +1189,7 @@ exercise_buffer_objects(enum Map_Buffer_Usage usage)
GLint bufferMapped;
static GLubyte data[BUFFER_DATA_SIZE] = {0};
float *dataPtr = NULL;
+ const char *extensions = (const char *) glGetString(GL_EXTENSIONS);
/* Get the function pointers we need. These are from
* GL_ARB_vertex_buffer_object and are required in all
@@ -1216,6 +1217,9 @@ exercise_buffer_objects(enum Map_Buffer_Usage usage)
* we're given Use_Map_Buffer_Range. Test it before using it.
*/
DECLARE_GLFUNC_PTR(BufferParameteriAPPLE, PFNGLBUFFERPARAMETERIAPPLEPROC);
+ if (!strstr("GL_APPLE_flush_buffer_range", extensions)) {
+ BufferParameteriAPPLE = NULL;
+ }
/* Make sure we have all the function pointers we need. */
if (GenBuffersARB == NULL ||
@@ -1286,7 +1290,7 @@ exercise_buffer_objects(enum Map_Buffer_Usage usage)
* using MapBufferRange, we first have to flush the range we modified.
*/
if (usage == Use_Map_Buffer_Range) {
- (*FlushMappedBufferRange)(GL_ARRAY_BUFFER_ARB, 4, 16);
+ (*FlushMappedBufferRange)(GL_ARRAY_BUFFER_ARB, 0, 16);
}
if (!(*UnmapBufferARB)(GL_ARRAY_BUFFER_ARB)) {
fprintf(stderr, "%s: UnmapBuffer failed\n", __FUNCTION__);