Merge branch 'i915tex_privbuffers' into softpipe_0_1_branch
[mesa.git] / src / mesa / drivers / dri / i915tex / intel_fbo.c
index 04ca5ae8ba0da25c5725e82d94964f31035065f2..559788f20a9b3f053b716e90f4b86e8ced0bdd80 100644 (file)
@@ -291,6 +291,12 @@ intel_alloc_renderbuffer_storage(GLcontext * ctx, struct gl_renderbuffer *rb,
       rb->Width = width;
       rb->Height = height;
 
+#if 1
+      /* update the surface's size too */
+      rb->surface->width = width;
+      rb->surface->height = height;
+#endif
+
       /* This sets the Get/PutRow/Value functions */
       intel_set_span_functions(&irb->Base);
 
@@ -362,7 +368,9 @@ intel_new_renderbuffer_fb(GLuint intFormat)
       irb->Base._BaseFormat = GL_DEPTH_STENCIL_EXT;
       break;
    default:
-      assert(0);
+      _mesa_problem(NULL,
+                   "Unexpected intFormat in intel_create_renderbuffer");
+      return NULL;
    }
 
    /* intel-specific methods */
@@ -371,7 +379,10 @@ intel_new_renderbuffer_fb(GLuint intFormat)
    irb->Base.GetPointer = intel_get_pointer;
    /* span routines set in alloc_storage function */
 
-   return irb;
+   irb->Base.surface = intel_new_surface(intFormat);
+   irb->Base.surface->rb = irb;
+
+   return &irb->Base;
 }
 
 /**
@@ -399,6 +410,9 @@ intel_new_renderbuffer(GLcontext * ctx, GLuint name)
    irb->Base.GetPointer = intel_get_pointer;
    /* span routines set in alloc_storage function */
 
+   irb->Base.surface = intel_new_surface(0 /*unknown format*/);
+   irb->Base.surface->rb = irb;
+
    return &irb->Base;
 }