partial #818, fix again that logic. I need to find something more generic and convenient to handle errors, assert and free used resources on fail assert

master
Pierre Joye 2022-02-01 22:58:21 +07:00
parent 95c6185b37
commit 09d5a6ad83
1 changed files with 4 additions and 4 deletions

View File

@ -41,7 +41,6 @@ static size_t read_test_file(char **buffer, char *basename)
{ {
char *filename; char *filename;
FILE *fp; FILE *fp;
size_t exp_size = 0, act_size = -1; size_t exp_size = 0, act_size = -1;
filename = gdTestFilePath2("tiff", basename); filename = gdTestFilePath2("tiff", basename);
@ -54,7 +53,7 @@ static size_t read_test_file(char **buffer, char *basename)
} }
exp_size = ftell(fp); exp_size = ftell(fp);
if (!gdTestAssert(exp_size > 0)) { if (exp_size <= 0) {
gdTestAssert(1==0); // only increase num failures used as return values in main gdTestAssert(1==0); // only increase num failures used as return values in main
goto fail2; goto fail2;
} }
@ -65,12 +64,13 @@ static size_t read_test_file(char **buffer, char *basename)
} }
*buffer = malloc(exp_size); *buffer = malloc(exp_size);
if (gdTestAssert(*buffer != NULL)) { if (*buffer != NULL) {
act_size = fread(*buffer, sizeof(**buffer), exp_size, fp); act_size = fread(*buffer, sizeof(**buffer), exp_size, fp);
gdTestAssert(act_size == exp_size); gdTestAssert(act_size == exp_size);
} else {
gdTestAssert(0);
} }
fail2: fail2:
fclose(fp); fclose(fp);
fail3: fail3: