mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-05 06:10:28 +01:00
mesa: move freeing of software renderbuffers into swrast
(cherry picked from commit f6a3979a04)
This commit is contained in:
parent
8e5e735424
commit
f29212ecba
2 changed files with 16 additions and 6 deletions
|
|
@ -55,8 +55,6 @@ _mesa_init_renderbuffer(struct gl_renderbuffer *rb, GLuint name)
|
|||
rb->InternalFormat = GL_RGBA;
|
||||
rb->Format = MESA_FORMAT_NONE;
|
||||
|
||||
rb->Data = NULL;
|
||||
|
||||
/* Point back to ourself so that we don't have to check for Wrapped==NULL
|
||||
* all over the drivers.
|
||||
*/
|
||||
|
|
@ -86,10 +84,7 @@ _mesa_new_renderbuffer(struct gl_context *ctx, GLuint name)
|
|||
void
|
||||
_mesa_delete_renderbuffer(struct gl_renderbuffer *rb)
|
||||
{
|
||||
if (rb->Data) {
|
||||
free(rb->Data);
|
||||
}
|
||||
free(rb);
|
||||
/* no-op */
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -156,6 +156,20 @@ soft_renderbuffer_storage(struct gl_context *ctx, struct gl_renderbuffer *rb,
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* Called via gl_renderbuffer::Delete()
|
||||
*/
|
||||
static void
|
||||
soft_renderbuffer_delete(struct gl_renderbuffer *rb)
|
||||
{
|
||||
if (rb->Data) {
|
||||
free(rb->Data);
|
||||
rb->Data = NULL;
|
||||
}
|
||||
free(rb);
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
_swrast_map_soft_renderbuffer(struct gl_context *ctx,
|
||||
struct gl_renderbuffer *rb,
|
||||
|
|
@ -198,6 +212,7 @@ _swrast_new_soft_renderbuffer(struct gl_context *ctx, GLuint name)
|
|||
struct gl_renderbuffer *rb = _mesa_new_renderbuffer(ctx, name);
|
||||
if (rb) {
|
||||
rb->AllocStorage = soft_renderbuffer_storage;
|
||||
rb->Delete = soft_renderbuffer_delete;
|
||||
}
|
||||
return rb;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue