intel: Remove another renderbuffer allocation path.
authorEric Anholt <eric@anholt.net>
Wed, 7 Dec 2011 23:44:02 +0000 (15:44 -0800)
committerEric Anholt <eric@anholt.net>
Wed, 14 Dec 2011 21:18:46 +0000 (13:18 -0800)
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).

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/intel/intel_fbo.c

index 63a3d30..b694129 100644 (file)
@@ -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,