From: Brian Paul Date: Tue, 27 May 2003 15:20:43 +0000 (+0000) Subject: check buffer->UseSoftware*Buffer in _mesa_free_framebuffer_data() X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8750668ad71d45d97a0b07a2c23e68322aac4b10;p=mesa.git check buffer->UseSoftware*Buffer in _mesa_free_framebuffer_data() --- diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index aaba851165d..1101045afd3 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -507,33 +507,35 @@ _mesa_free_framebuffer_data( GLframebuffer *buffer ) if (!buffer) return; - if (buffer->DepthBuffer) { + if (buffer->UseSoftwareDepthBuffer && buffer->DepthBuffer) { MESA_PBUFFER_FREE( buffer->DepthBuffer ); buffer->DepthBuffer = NULL; } - if (buffer->Accum) { + if (buffer->UseSoftwareAccumBuffer && buffer->Accum) { MESA_PBUFFER_FREE( buffer->Accum ); buffer->Accum = NULL; } - if (buffer->Stencil) { + if (buffer->UseSoftwareStencilBuffer && buffer->Stencil) { MESA_PBUFFER_FREE( buffer->Stencil ); buffer->Stencil = NULL; } - if (buffer->FrontLeftAlpha) { - MESA_PBUFFER_FREE( buffer->FrontLeftAlpha ); - buffer->FrontLeftAlpha = NULL; - } - if (buffer->BackLeftAlpha) { - MESA_PBUFFER_FREE( buffer->BackLeftAlpha ); - buffer->BackLeftAlpha = NULL; - } - if (buffer->FrontRightAlpha) { - MESA_PBUFFER_FREE( buffer->FrontRightAlpha ); - buffer->FrontRightAlpha = NULL; - } - if (buffer->BackRightAlpha) { - MESA_PBUFFER_FREE( buffer->BackRightAlpha ); - buffer->BackRightAlpha = NULL; + if (buffer->UseSoftwareAlphaBuffers){ + if (buffer->FrontLeftAlpha) { + MESA_PBUFFER_FREE( buffer->FrontLeftAlpha ); + buffer->FrontLeftAlpha = NULL; + } + if (buffer->BackLeftAlpha) { + MESA_PBUFFER_FREE( buffer->BackLeftAlpha ); + buffer->BackLeftAlpha = NULL; + } + if (buffer->FrontRightAlpha) { + MESA_PBUFFER_FREE( buffer->FrontRightAlpha ); + buffer->FrontRightAlpha = NULL; + } + if (buffer->BackRightAlpha) { + MESA_PBUFFER_FREE( buffer->BackRightAlpha ); + buffer->BackRightAlpha = NULL; + } } }