diff options
author | Ian Romanick <[email protected]> | 2012-01-17 16:24:05 -0800 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2012-01-19 09:34:01 -0800 |
commit | f0ea46790f8f4df9a39b0cfab5c5f1bf02c136fc (patch) | |
tree | 2b92815daaf1c857fb80c490055562faed6090ed /src/mesa/drivers/dri | |
parent | 75f37ddba7e5a297390299be0dab8377ea40f5c8 (diff) |
mesa: Set default access flags based on the run-time API
The default access flags for OpenGL ES (via GL_OES_map_buffer) and
desktop OpenGL are different. The code previously tried to handle
this, but the decision was made at compile time. Since the same
driver binary can be used for both OpenGL ES and desktop OpenGL, the
decision must be made at run-time.
This should fix bug #44433. It appears that the test case does
various map and unmap operations and inspects the state of the buffer
object around each. When it sees that GL_BUFFER_ACCESS does not match
its expectations, it fails.
NOTE: This is a candidate for release branches.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Brian Paul <[email protected]>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44433
Diffstat (limited to 'src/mesa/drivers/dri')
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_buffer_objects.c | 2 | ||||
-rw-r--r-- | src/mesa/drivers/dri/nouveau/nouveau_bufferobj.c | 2 | ||||
-rw-r--r-- | src/mesa/drivers/dri/radeon/radeon_buffer_objects.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_buffer_objects.c b/src/mesa/drivers/dri/intel/intel_buffer_objects.c index 03dd179ee0b..600f01ca6f0 100644 --- a/src/mesa/drivers/dri/intel/intel_buffer_objects.c +++ b/src/mesa/drivers/dri/intel/intel_buffer_objects.c @@ -72,7 +72,7 @@ intel_bufferobj_alloc(struct gl_context * ctx, GLuint name, GLenum target) { struct intel_buffer_object *obj = CALLOC_STRUCT(intel_buffer_object); - _mesa_initialize_buffer_object(&obj->Base, name, target); + _mesa_initialize_buffer_object(ctx, &obj->Base, name, target); obj->buffer = NULL; diff --git a/src/mesa/drivers/dri/nouveau/nouveau_bufferobj.c b/src/mesa/drivers/dri/nouveau/nouveau_bufferobj.c index dc5b1528b07..f7ad895ac9a 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_bufferobj.c +++ b/src/mesa/drivers/dri/nouveau/nouveau_bufferobj.c @@ -56,7 +56,7 @@ nouveau_bufferobj_new(struct gl_context *ctx, GLuint buffer, GLenum target) if (!nbo) return NULL; - _mesa_initialize_buffer_object(&nbo->base, buffer, target); + _mesa_initialize_buffer_object(ctx, &nbo->base, buffer, target); return &nbo->base; } diff --git a/src/mesa/drivers/dri/radeon/radeon_buffer_objects.c b/src/mesa/drivers/dri/radeon/radeon_buffer_objects.c index 7b59c0377f8..5abc52ba3f7 100644 --- a/src/mesa/drivers/dri/radeon/radeon_buffer_objects.c +++ b/src/mesa/drivers/dri/radeon/radeon_buffer_objects.c @@ -46,7 +46,7 @@ radeonNewBufferObject(struct gl_context * ctx, { struct radeon_buffer_object *obj = CALLOC_STRUCT(radeon_buffer_object); - _mesa_initialize_buffer_object(&obj->Base, name, target); + _mesa_initialize_buffer_object(ctx, &obj->Base, name, target); obj->bo = NULL; |