From 08238a0ac2a309d1009ccfcf53f7e9908ae61881 Mon Sep 17 00:00:00 2001 From: wilson chen Date: Thu, 19 Mar 2020 23:22:14 +0800 Subject: [PATCH] Fix some memory leakage in test cases Fix the memory leakage in following test cases: tests/bug_overflow_lagre_new_size.c, tests/gdimagecrop/bug00486.c, tests/bmp/bug00450.c --- tests/bmp/bug00450.c | 5 ++++- tests/gdimagecrop/bug00486.c | 4 ++++ tests/gdimagescale/bug_overflow_large_new_size.c | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/tests/bmp/bug00450.c b/tests/bmp/bug00450.c index 66596a5..e048845 100644 --- a/tests/bmp/bug00450.c +++ b/tests/bmp/bug00450.c @@ -4,7 +4,8 @@ #include "gdtest.h" int main(void) { - gdImagePtr im = gdImageCreateFromFile(gdTestFilePath("bmp/bug00450.bmp")); + char *path = gdTestFilePath("bmp/bug00450.bmp"); + gdImagePtr im = gdImageCreateFromFile(path); gdTestAssert(im != NULL); if (im) { @@ -33,5 +34,7 @@ int main(void) { gdImageDestroy(im); } + free(path); + return gdNumFailures(); } diff --git a/tests/gdimagecrop/bug00486.c b/tests/gdimagecrop/bug00486.c index b27aaad..289d88f 100644 --- a/tests/gdimagecrop/bug00486.c +++ b/tests/gdimagecrop/bug00486.c @@ -40,5 +40,9 @@ int main() gdAssertImageEquals(croppedRight, croppedLeft); + gdImageDestroy(orig); + gdImageDestroy(croppedLeft); + gdImageDestroy(croppedRight); + return gdNumFailures(); } diff --git a/tests/gdimagescale/bug_overflow_large_new_size.c b/tests/gdimagescale/bug_overflow_large_new_size.c index ded5c58..20cda1d 100644 --- a/tests/gdimagescale/bug_overflow_large_new_size.c +++ b/tests/gdimagescale/bug_overflow_large_new_size.c @@ -22,6 +22,7 @@ int main() im2 = gdImageScale(im,0x15555556, 1); if (im2 == NULL) { printf("gdImageScale failed, expected (out of memory or overflow validation\n"); + gdImageDestroy(im); return 0; } gdImageDestroy(im);