mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 17:30:12 +01:00
mesa: Don't check for image->Data when freeing an image's contents.
All driver implementations of FreeTextureImageBuffer already check
that Data != NULL and free it. However, this means that we will also
free driver storage if the driver storage wasn't in the form of a Data
pointer.
This was produced by the following semantic patch:
@@
expression C;
expression T;
@@
- if (T->Data) {
- C->Driver.FreeTextureImageBuffer(C, T);
+ C->Driver.FreeTextureImageBuffer(C, T);
- }
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
parent
5401590815
commit
68f8cf7263
3 changed files with 5 additions and 12 deletions
|
|
@ -1948,8 +1948,7 @@ generate_mipmap_uncompressed(struct gl_context *ctx, GLenum target,
|
|||
}
|
||||
|
||||
/* Free old image data */
|
||||
if (dstImage->Data)
|
||||
ctx->Driver.FreeTextureImageBuffer(ctx, dstImage);
|
||||
ctx->Driver.FreeTextureImageBuffer(ctx, dstImage);
|
||||
|
||||
/* initialize new image */
|
||||
_mesa_init_teximage_fields(ctx, target, dstImage, dstWidth, dstHeight,
|
||||
|
|
|
|||
|
|
@ -2456,9 +2456,7 @@ teximage(struct gl_context *ctx, GLuint dims,
|
|||
else {
|
||||
gl_format texFormat;
|
||||
|
||||
if (texImage->Data) {
|
||||
ctx->Driver.FreeTextureImageBuffer( ctx, texImage );
|
||||
}
|
||||
ctx->Driver.FreeTextureImageBuffer(ctx, texImage);
|
||||
|
||||
ASSERT(texImage->Data == NULL);
|
||||
texFormat = _mesa_choose_texture_format(ctx, texObj, target, level,
|
||||
|
|
@ -2597,8 +2595,7 @@ _mesa_EGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image)
|
|||
if (!texImage) {
|
||||
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glEGLImageTargetTexture2D");
|
||||
} else {
|
||||
if (texImage->Data)
|
||||
ctx->Driver.FreeTextureImageBuffer( ctx, texImage );
|
||||
ctx->Driver.FreeTextureImageBuffer(ctx, texImage);
|
||||
|
||||
ASSERT(texImage->Data == NULL);
|
||||
ctx->Driver.EGLImageTargetTexture2D(ctx, target,
|
||||
|
|
@ -3362,9 +3359,7 @@ compressedteximage(struct gl_context *ctx, GLuint dims,
|
|||
else {
|
||||
gl_format texFormat;
|
||||
|
||||
if (texImage->Data) {
|
||||
ctx->Driver.FreeTextureImageBuffer( ctx, texImage );
|
||||
}
|
||||
ctx->Driver.FreeTextureImageBuffer(ctx, texImage);
|
||||
ASSERT(texImage->Data == NULL);
|
||||
|
||||
texFormat = _mesa_choose_texture_format(ctx, texObj, target, level,
|
||||
|
|
|
|||
|
|
@ -444,8 +444,7 @@ st_generate_mipmap(struct gl_context *ctx, GLenum target,
|
|||
}
|
||||
|
||||
/* Free old image data */
|
||||
if (dstImage->Data)
|
||||
ctx->Driver.FreeTextureImageBuffer(ctx, dstImage);
|
||||
ctx->Driver.FreeTextureImageBuffer(ctx, dstImage);
|
||||
|
||||
/* initialize new image */
|
||||
_mesa_init_teximage_fields(ctx, target, dstImage, dstWidth, dstHeight,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue