diff options
Diffstat (limited to 'jpegtran.c')
-rw-r--r-- | jpegtran.c | 26 |
1 files changed, 14 insertions, 12 deletions
@@ -380,7 +380,11 @@ parse_switches(j_compress_ptr cinfo, int argc, char **argv, */ int +#ifdef GTEST +jpegtran(int argc, char **argv) +#else main(int argc, char **argv) +#endif { struct jpeg_decompress_struct srcinfo; struct jpeg_compress_struct dstinfo; @@ -456,7 +460,7 @@ main(int argc, char **argv) if ((fp = fopen(argv[file_index], READ_BINARY)) == NULL) { fprintf(stderr, "%s: can't open %s for reading\n", progname, argv[file_index]); - exit(EXIT_FAILURE); + return EXIT_FAILURE; } } else { /* default input file is stdin */ @@ -466,26 +470,26 @@ main(int argc, char **argv) if (icc_filename != NULL) { if ((icc_file = fopen(icc_filename, READ_BINARY)) == NULL) { fprintf(stderr, "%s: can't open %s\n", progname, icc_filename); - exit(EXIT_FAILURE); + return EXIT_FAILURE; } if (fseek(icc_file, 0, SEEK_END) < 0 || (icc_len = ftell(icc_file)) < 1 || fseek(icc_file, 0, SEEK_SET) < 0) { fprintf(stderr, "%s: can't determine size of %s\n", progname, icc_filename); - exit(EXIT_FAILURE); + return EXIT_FAILURE; } if ((icc_profile = (JOCTET *)malloc(icc_len)) == NULL) { fprintf(stderr, "%s: can't allocate memory for ICC profile\n", progname); fclose(icc_file); - exit(EXIT_FAILURE); + return EXIT_FAILURE; } if (fread(icc_profile, icc_len, 1, icc_file) < 1) { fprintf(stderr, "%s: can't read ICC profile from %s\n", progname, icc_filename); free(icc_profile); fclose(icc_file); - exit(EXIT_FAILURE); + return EXIT_FAILURE; } fclose(icc_file); if (copyoption == JCOPYOPT_ALL) @@ -513,7 +517,7 @@ main(int argc, char **argv) */ if (!jtransform_request_workspace(&srcinfo, &transformoption)) { fprintf(stderr, "%s: transformation is not perfect\n", progname); - exit(EXIT_FAILURE); + return EXIT_FAILURE; } #endif @@ -549,7 +553,7 @@ main(int argc, char **argv) if ((fp = fopen(outfilename, WRITE_BINARY)) == NULL) { fprintf(stderr, "%s: can't open %s for writing\n", progname, outfilename); - exit(EXIT_FAILURE); + return EXIT_FAILURE; } } else { /* default output file is stdout */ @@ -591,11 +595,9 @@ main(int argc, char **argv) end_progress_monitor((j_common_ptr)&dstinfo); #endif - if (icc_profile != NULL) - free(icc_profile); + free(icc_profile); /* All done. */ - exit(jsrcerr.num_warnings + jdsterr.num_warnings ? - EXIT_WARNING : EXIT_SUCCESS); - return 0; /* suppress no-return-value warnings */ + return (jsrcerr.num_warnings + jdsterr.num_warnings ? + EXIT_WARNING : EXIT_SUCCESS); } |