From: Fletcher T. Penney Date: Sun, 5 Mar 2017 23:39:25 +0000 (-0500) Subject: FIXED: Don't free token_pool if never initialized X-Git-Tag: 6.0.0-b1^2~17 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9e96a8df79b1348ddb350ecba32f9be6cc1d12b3;p=multimarkdown FIXED: Don't free token_pool if never initialized --- diff --git a/Sources/multimarkdown/main.c b/Sources/multimarkdown/main.c index 7e54825..2e0fdf1 100644 --- a/Sources/multimarkdown/main.c +++ b/Sources/multimarkdown/main.c @@ -205,7 +205,7 @@ int main(int argc, char** argv) { printf("Options:\n"); arg_print_glossary(stdout, argtable, "\t%-25s %s\n"); printf("\n"); - goto exit; + goto exit2; } if (nerrors > 0) { @@ -213,7 +213,7 @@ int main(int argc, char** argv) { arg_print_errors(stdout, a_end, MULTIMARKDOWN_NAME); printf("Try '%s --help' for more information.\n", binname); exitcode = 1; - goto exit; + goto exit2; } // '--version' also takes precedence @@ -222,7 +222,7 @@ int main(int argc, char** argv) { printf("%s\n\n", MULTIMARKDOWN_COPYRIGHT); printf("%s\n", MULTIMARKDOWN_LICENSE); printf("\n"); - goto exit; + goto exit2; } @@ -282,7 +282,7 @@ int main(int argc, char** argv) { // No valid format found fprintf(stderr, "%s: Unknown output format '%s'\n", binname, a_format->sval[0]); exitcode = 1; - goto exit; + goto exit2; } } @@ -319,7 +319,7 @@ int main(int argc, char** argv) { if (buffer == NULL) { fprintf(stderr, "Error reading file '%s'\n", a_file->filename[i]); exitcode = 1; - goto exit; + goto exit2; } // Append output file extension @@ -453,6 +453,8 @@ exit: token_pool_free(); #endif +exit2: + // Clean up after argtable arg_freetable(argtable, sizeof(argtable) / sizeof(argtable[0])); return exitcode;