diff options
author | Brian Paul <[email protected]> | 2011-07-14 08:09:21 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2011-07-14 08:14:13 -0600 |
commit | 74142f1bf2a50fb929b593ebf7fda88da9da17f9 (patch) | |
tree | 4f364cccfacd7e08814dcaf95bf185d21a496703 | |
parent | 5db7723ada0be301b7f8eed754cb62f8a84d6768 (diff) |
mesa: use inline function wrapper for _mesa_reference_renderbuffer()
-rw-r--r-- | src/mesa/main/renderbuffer.c | 12 | ||||
-rw-r--r-- | src/mesa/main/renderbuffer.h | 11 |
2 files changed, 14 insertions, 9 deletions
diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index f5b20020d23..70011e6b24a 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -2530,17 +2530,13 @@ _mesa_remove_renderbuffer(struct gl_framebuffer *fb, * Set *ptr to point to rb. If *ptr points to another renderbuffer, * dereference that buffer first. The new renderbuffer's refcount will * be incremented. The old renderbuffer's refcount will be decremented. + * This is normally only called from the _mesa_reference_renderbuffer() macro + * when there's a real pointer change. */ void -_mesa_reference_renderbuffer(struct gl_renderbuffer **ptr, - struct gl_renderbuffer *rb) +_mesa_reference_renderbuffer_(struct gl_renderbuffer **ptr, + struct gl_renderbuffer *rb) { - assert(ptr); - if (*ptr == rb) { - /* no change */ - return; - } - if (*ptr) { /* Unreference the old renderbuffer */ GLboolean deleteFlag = GL_FALSE; diff --git a/src/mesa/main/renderbuffer.h b/src/mesa/main/renderbuffer.h index 53da5b03385..f9329d55fa5 100644 --- a/src/mesa/main/renderbuffer.h +++ b/src/mesa/main/renderbuffer.h @@ -105,8 +105,17 @@ _mesa_remove_renderbuffer(struct gl_framebuffer *fb, gl_buffer_index bufferName); extern void +_mesa_reference_renderbuffer_(struct gl_renderbuffer **ptr, + struct gl_renderbuffer *rb); + +static INLINE void _mesa_reference_renderbuffer(struct gl_renderbuffer **ptr, - struct gl_renderbuffer *rb); + struct gl_renderbuffer *rb) +{ + if (*ptr != rb) + _mesa_reference_renderbuffer_(ptr, rb); +} + #endif /* RENDERBUFFER_H */ |