Mesa (master): mesa: use inline function wrapper for _mesa_reference_framebuffer()
Brian Paul
brianp at kemper.freedesktop.org
Thu Jul 14 07:16:32 PDT 2011
Module: Mesa
Branch: master
Commit: 5db7723ada0be301b7f8eed754cb62f8a84d6768
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5db7723ada0be301b7f8eed754cb62f8a84d6768
Author: Brian Paul <brianp at vmware.com>
Date: Thu Jul 14 08:09:21 2011 -0600
mesa: use inline function wrapper for _mesa_reference_framebuffer()
---
src/mesa/main/framebuffer.c | 12 ++++--------
src/mesa/main/framebuffer.h | 10 +++++++++-
2 files changed, 13 insertions(+), 9 deletions(-)
diff --git a/src/mesa/main/framebuffer.c b/src/mesa/main/framebuffer.c
index 6e2ce74..e27569a 100644
--- a/src/mesa/main/framebuffer.c
+++ b/src/mesa/main/framebuffer.c
@@ -232,17 +232,13 @@ _mesa_free_framebuffer_data(struct gl_framebuffer *fb)
/**
* Set *ptr to point to fb, with refcounting and locking.
+ * This is normally only called from the _mesa_reference_framebuffer() macro
+ * when there's a real pointer change.
*/
void
-_mesa_reference_framebuffer(struct gl_framebuffer **ptr,
- struct gl_framebuffer *fb)
+_mesa_reference_framebuffer_(struct gl_framebuffer **ptr,
+ struct gl_framebuffer *fb)
{
- assert(ptr);
- if (*ptr == fb) {
- /* no change */
- return;
- }
-
if (*ptr) {
/* unreference old renderbuffer */
GLboolean deleteFlag = GL_FALSE;
diff --git a/src/mesa/main/framebuffer.h b/src/mesa/main/framebuffer.h
index c3bd638..b2b29a7 100644
--- a/src/mesa/main/framebuffer.h
+++ b/src/mesa/main/framebuffer.h
@@ -51,8 +51,16 @@ extern void
_mesa_free_framebuffer_data(struct gl_framebuffer *buffer);
extern void
+_mesa_reference_framebuffer_(struct gl_framebuffer **ptr,
+ struct gl_framebuffer *fb);
+
+static INLINE void
_mesa_reference_framebuffer(struct gl_framebuffer **ptr,
- struct gl_framebuffer *fb);
+ struct gl_framebuffer *fb)
+{
+ if (*ptr != fb)
+ _mesa_reference_framebuffer_(ptr, fb);
+}
extern void
_mesa_resize_framebuffer(struct gl_context *ctx, struct gl_framebuffer *fb,
More information about the mesa-commit
mailing list