From 431b458f24f05db612e276e12528ce0e62707b65 Mon Sep 17 00:00:00 2001 From: Vinson Lee Date: Sat, 31 Mar 2012 23:11:42 -0700 Subject: [PATCH] swrast: Fix memory leaks in blit_linear. Fixes Coverity resource leak defects. NOTE: This is a candidate for the 8.0 branch. Signed-off-by: Vinson Lee Reviewed-by: Brian Paul --- src/mesa/swrast/s_blit.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/mesa/swrast/s_blit.c b/src/mesa/swrast/s_blit.c index 6d0b889c195..b0c56a40fce 100644 --- a/src/mesa/swrast/s_blit.c +++ b/src/mesa/swrast/s_blit.c @@ -566,6 +566,9 @@ blit_linear(struct gl_context *ctx, GL_MAP_READ_BIT | GL_MAP_WRITE_BIT, &srcMap, &srcRowStride); if (!srcMap) { + free(srcBuffer0); + free(srcBuffer1); + free(dstBuffer); _mesa_error(ctx, GL_OUT_OF_MEMORY, "glBlitFramebuffer"); return; } @@ -582,6 +585,9 @@ blit_linear(struct gl_context *ctx, 0, 0, readRb->Width, readRb->Height, GL_MAP_READ_BIT, &srcMap, &srcRowStride); if (!srcMap) { + free(srcBuffer0); + free(srcBuffer1); + free(dstBuffer); _mesa_error(ctx, GL_OUT_OF_MEMORY, "glBlitFramebuffer"); return; } @@ -590,6 +596,9 @@ blit_linear(struct gl_context *ctx, GL_MAP_WRITE_BIT, &dstMap, &dstRowStride); if (!dstMap) { ctx->Driver.UnmapRenderbuffer(ctx, readRb); + free(srcBuffer0); + free(srcBuffer1); + free(dstBuffer); _mesa_error(ctx, GL_OUT_OF_MEMORY, "glBlitFramebuffer"); return; } -- 2.30.2