added _mesa_free_framebuffer_data()
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
/* $Id: context.c,v 1.133 2001/04/25 18:21:05 brianp Exp $ */
|
/* $Id: context.c,v 1.134 2001/04/27 21:17:20 brianp Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Mesa 3-D graphics library
|
* Mesa 3-D graphics library
|
||||||
@@ -361,7 +361,7 @@ _mesa_initialize_framebuffer( GLframebuffer *buffer,
|
|||||||
assert(visual->alphaBits > 0);
|
assert(visual->alphaBits > 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
buffer->Visual = *visual; /* XXX copy instead? */
|
buffer->Visual = *visual;
|
||||||
buffer->UseSoftwareDepthBuffer = softwareDepth;
|
buffer->UseSoftwareDepthBuffer = softwareDepth;
|
||||||
buffer->UseSoftwareStencilBuffer = softwareStencil;
|
buffer->UseSoftwareStencilBuffer = softwareStencil;
|
||||||
buffer->UseSoftwareAccumBuffer = softwareAccum;
|
buffer->UseSoftwareAccumBuffer = softwareAccum;
|
||||||
@@ -376,32 +376,52 @@ void
|
|||||||
_mesa_destroy_framebuffer( GLframebuffer *buffer )
|
_mesa_destroy_framebuffer( GLframebuffer *buffer )
|
||||||
{
|
{
|
||||||
if (buffer) {
|
if (buffer) {
|
||||||
if (buffer->DepthBuffer) {
|
_mesa_free_framebuffer_data(buffer);
|
||||||
FREE( buffer->DepthBuffer );
|
|
||||||
}
|
|
||||||
if (buffer->Accum) {
|
|
||||||
FREE( buffer->Accum );
|
|
||||||
}
|
|
||||||
if (buffer->Stencil) {
|
|
||||||
FREE( buffer->Stencil );
|
|
||||||
}
|
|
||||||
if (buffer->FrontLeftAlpha) {
|
|
||||||
FREE( buffer->FrontLeftAlpha );
|
|
||||||
}
|
|
||||||
if (buffer->BackLeftAlpha) {
|
|
||||||
FREE( buffer->BackLeftAlpha );
|
|
||||||
}
|
|
||||||
if (buffer->FrontRightAlpha) {
|
|
||||||
FREE( buffer->FrontRightAlpha );
|
|
||||||
}
|
|
||||||
if (buffer->BackRightAlpha) {
|
|
||||||
FREE( buffer->BackRightAlpha );
|
|
||||||
}
|
|
||||||
FREE(buffer);
|
FREE(buffer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Free the data hanging off of <buffer>, but not <buffer> itself.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
_mesa_free_framebuffer_data( GLframebuffer *buffer )
|
||||||
|
{
|
||||||
|
if (!buffer)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (buffer->DepthBuffer) {
|
||||||
|
FREE( buffer->DepthBuffer );
|
||||||
|
buffer->DepthBuffer = NULL;
|
||||||
|
}
|
||||||
|
if (buffer->Accum) {
|
||||||
|
FREE( buffer->Accum );
|
||||||
|
buffer->Accum = NULL;
|
||||||
|
}
|
||||||
|
if (buffer->Stencil) {
|
||||||
|
FREE( buffer->Stencil );
|
||||||
|
buffer->Stencil = NULL;
|
||||||
|
}
|
||||||
|
if (buffer->FrontLeftAlpha) {
|
||||||
|
FREE( buffer->FrontLeftAlpha );
|
||||||
|
buffer->FrontLeftAlpha = NULL;
|
||||||
|
}
|
||||||
|
if (buffer->BackLeftAlpha) {
|
||||||
|
FREE( buffer->BackLeftAlpha );
|
||||||
|
buffer->BackLeftAlpha = NULL;
|
||||||
|
}
|
||||||
|
if (buffer->FrontRightAlpha) {
|
||||||
|
FREE( buffer->FrontRightAlpha );
|
||||||
|
buffer->FrontRightAlpha = NULL;
|
||||||
|
}
|
||||||
|
if (buffer->BackRightAlpha) {
|
||||||
|
FREE( buffer->BackRightAlpha );
|
||||||
|
buffer->BackRightAlpha = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**********************************************************************/
|
/**********************************************************************/
|
||||||
/***** Context allocation, initialization, destroying *****/
|
/***** Context allocation, initialization, destroying *****/
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
/* $Id: context.h,v 1.25 2001/03/12 00:48:37 gareth Exp $ */
|
/* $Id: context.h,v 1.26 2001/04/27 21:17:20 brianp Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Mesa 3-D graphics library
|
* Mesa 3-D graphics library
|
||||||
@@ -117,6 +117,9 @@ _mesa_initialize_framebuffer( GLframebuffer *fb,
|
|||||||
GLboolean softwareAccum,
|
GLboolean softwareAccum,
|
||||||
GLboolean softwareAlpha );
|
GLboolean softwareAlpha );
|
||||||
|
|
||||||
|
extern void
|
||||||
|
_mesa_free_framebuffer_data( GLframebuffer *buffer );
|
||||||
|
|
||||||
extern void
|
extern void
|
||||||
_mesa_destroy_framebuffer( GLframebuffer *buffer );
|
_mesa_destroy_framebuffer( GLframebuffer *buffer );
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user