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 63a3d302727f55b1e66076021c3e67582e67e45a..b694129f4867d23af634ec77f496afe1830b678c 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,