intel: Unobfuscate intel_alloc_renderbuffer_storage
authorChad Versace <chad@chad-versace.us>
Wed, 15 Jun 2011 00:38:30 +0000 (17:38 -0700)
committerChad Versace <chad@chad-versace.us>
Tue, 21 Jun 2011 18:21:57 +0000 (11:21 -0700)
Hiz buffer allocation can only occur if the 'else' branch has been taken,
so move the hiz buffer allocation into the 'else' branch.

Having the hiz buffer allocation dangling outside of the if-tree was just
damn confusing.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Chad Versace <chad@chad-versace.us>
src/mesa/drivers/dri/intel/intel_fbo.c

index b48eac400087a6d06bc6423635f37b06c8e745f2..ff09b5dc7e7dddf4ac3fdfc2b7f8980cf1740487 100644 (file)
@@ -196,26 +196,26 @@ intel_alloc_renderbuffer_storage(struct gl_context * ctx, struct gl_renderbuffer
                                       width,
                                       height / 2,
                                       GL_TRUE);
+      if (!irb->region)
+       return false;
+
    } else {
       irb->region = intel_region_alloc(intel->intelScreen, tiling, cpp,
                                       width, height, GL_TRUE);
-   }
-
-   if (!irb->region)
-      return GL_FALSE;       /* out of memory? */
-
-   ASSERT(irb->region->buffer);
-
-   if (intel->vtbl.is_hiz_depth_format(intel, rb->Format)) {
-      irb->hiz_region = intel_region_alloc(intel->intelScreen,
-                                           I915_TILING_Y,
-                                           irb->region->cpp,
-                                           irb->region->width,
-                                           irb->region->height,
-                                           GL_TRUE);
-      if (!irb->hiz_region) {
-         intel_region_release(&irb->region);
-         return GL_FALSE;
+      if (!irb->region)
+        return false;
+
+      if (intel->vtbl.is_hiz_depth_format(intel, rb->Format)) {
+        irb->hiz_region = intel_region_alloc(intel->intelScreen,
+                                             I915_TILING_Y,
+                                             irb->region->cpp,
+                                             irb->region->width,
+                                             irb->region->height,
+                                             GL_TRUE);
+        if (!irb->hiz_region) {
+           intel_region_release(&irb->region);
+           return false;
+        }
       }
    }