diff options
author | Brian Paul <[email protected]> | 2012-11-30 10:04:48 -0700 |
---|---|---|
committer | Brian Paul <[email protected]> | 2012-11-30 12:08:06 -0700 |
commit | c73245882c7ff1277b190b97f093f7b423a22f10 (patch) | |
tree | cc42fc6cc7cd175407d511e845f75c49383936fc /src/mesa/main/renderbuffer.c | |
parent | ca3ed3e024864e91ca3cccc59fb96950e1d079b5 (diff) |
mesa: pass context parameter to gl_renderbuffer::Delete()
We sometimes need a rendering context when deleting renderbuffers.
Pass it explicitly instead of trying to grab a current context
(which might be NULL). The next patch will make use of this.
Note: this is a candidate for the stable branches.
Reviewed-by: Jose Fonseca <[email protected]>
Diffstat (limited to 'src/mesa/main/renderbuffer.c')
-rw-r--r-- | src/mesa/main/renderbuffer.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index 26f53d1009d..2f284432994 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -80,7 +80,7 @@ _mesa_new_renderbuffer(struct gl_context *ctx, GLuint name) * free the object in the end. */ void -_mesa_delete_renderbuffer(struct gl_renderbuffer *rb) +_mesa_delete_renderbuffer(struct gl_context *ctx, struct gl_renderbuffer *rb) { _glthread_DESTROY_MUTEX(rb->Mutex); free(rb); @@ -159,7 +159,11 @@ _mesa_reference_renderbuffer_(struct gl_renderbuffer **ptr, _glthread_UNLOCK_MUTEX(oldRb->Mutex); if (deleteFlag) { - oldRb->Delete(oldRb); + GET_CURRENT_CONTEXT(ctx); + if (ctx) + oldRb->Delete(ctx, oldRb); + else + _mesa_problem(NULL, "Unable to delete renderbuffer, no context"); } *ptr = NULL; |