Mesa (master): Fallback to software render if there is no miptree for an image

Alex Deucher agd5f at kemper.freedesktop.org
Wed May 26 22:22:39 UTC 2010


Module: Mesa
Branch: master
Commit: f49da110a81cc964100efa6a09e0fcdc7a35a935
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f49da110a81cc964100efa6a09e0fcdc7a35a935

Author: Will Dyson <will.dyson at gmail.com>
Date:   Tue May 25 01:10:19 2010 -0400

Fallback to software render if there is no miptree for an image

This can happen when checking if a software fallback for a higher level
operation (such as GenerateMipmap) is needed.

Signed-off-by: Maciej Cencora <m.cencora at gmail.com>
Signed-off-by: Alex Deucher <alexdeucher at gmail.com>

---

 src/mesa/drivers/dri/radeon/radeon_fbo.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/mesa/drivers/dri/radeon/radeon_fbo.c b/src/mesa/drivers/dri/radeon/radeon_fbo.c
index 6398605..5174850 100644
--- a/src/mesa/drivers/dri/radeon/radeon_fbo.c
+++ b/src/mesa/drivers/dri/radeon/radeon_fbo.c
@@ -506,9 +506,10 @@ radeon_render_texture(GLcontext * ctx,
 
    ASSERT(newImage);
 
-   if (newImage->Border != 0) {
-      /* Fallback on drawing to a texture with a border, which won't have a
-       * miptree.
+   radeon_image = (radeon_texture_image *)newImage;
+
+   if (!radeon_image->mt || newImage->Border != 0) {
+      /* Fallback on drawing to a texture without a miptree.
        */
       _mesa_reference_renderbuffer(&att->Renderbuffer, NULL);
       _mesa_render_texture(ctx, fb, att);
@@ -539,7 +540,6 @@ radeon_render_texture(GLcontext * ctx,
        rrb->base.RefCount);
 
    /* point the renderbufer's region to the texture image region */
-   radeon_image = (radeon_texture_image *)newImage;
    if (rrb->bo != radeon_image->mt->bo) {
       if (rrb->bo)
   	radeon_bo_unref(rrb->bo);




More information about the mesa-commit mailing list