[Mesa-dev] [PATCH 4/8] intel: Remove another renderbuffer allocation path.

Eric Anholt eric at anholt.net
Thu Dec 8 13:39:59 PST 2011


Now there's the thing that CALLOCs and sets up window system vtable,
and the thing that CALLOCs and sets up user renderbuffer vtable.  The
user renderbuffer vtable gets replaced later by
intel_renderbuffer_update_wrapper for wrapped renderbuffers (things
with name == ~0).
---
 src/mesa/drivers/dri/intel/intel_fbo.c |   12 ++++--------
 1 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/src/mesa/drivers/dri/intel/intel_fbo.c b/src/mesa/drivers/dri/intel/intel_fbo.c
index 561c524..837a2e3 100644
--- a/src/mesa/drivers/dri/intel/intel_fbo.c
+++ b/src/mesa/drivers/dri/intel/intel_fbo.c
@@ -619,20 +619,16 @@ intel_renderbuffer_wrap_miptree(struct intel_context *intel,
                                 GLenum internal_format)
 
 {
-   const GLuint name = ~0;   /* not significant, but distinct for debugging */
    struct gl_context *ctx = &intel->ctx;
+   struct gl_renderbuffer *rb;
    struct intel_renderbuffer *irb;
 
    intel_miptree_check_level_layer(mt, level, layer);
 
-   irb = CALLOC_STRUCT(intel_renderbuffer);
-   if (!irb) {
-      _mesa_error(ctx, GL_OUT_OF_MEMORY, "glFramebufferTexture");
+   rb = intel_new_renderbuffer(ctx, ~0);
+   irb = intel_renderbuffer(rb);
+   if (!irb)
       return NULL;
-   }
-
-   _mesa_init_renderbuffer(&irb->Base, name);
-   irb->Base.ClassID = INTEL_RB_CLASS;
 
    if (!intel_renderbuffer_update_wrapper(intel, irb,
                                           mt, level, layer,
-- 
1.7.7.3



More information about the mesa-dev mailing list