Date: Wed, 11 Jun 2014 17:19:58 +0000 (UTC) From: Ed Maste <emaste@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r267366 - head/usr.bin/vtfontcvt Message-ID: <201406111719.s5BHJw3O090628@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: emaste Date: Wed Jun 11 17:19:57 2014 New Revision: 267366 URL: http://svnweb.freebsd.org/changeset/base/267366 Log: Avoid leaking file pointer on error CID: 1222506, 1222505 Modified: head/usr.bin/vtfontcvt/vtfontcvt.c Modified: head/usr.bin/vtfontcvt/vtfontcvt.c ============================================================================== --- head/usr.bin/vtfontcvt/vtfontcvt.c Wed Jun 11 17:03:14 2014 (r267365) +++ head/usr.bin/vtfontcvt/vtfontcvt.c Wed Jun 11 17:19:57 2014 (r267366) @@ -331,6 +331,7 @@ parse_file(const char *filename, unsigne { FILE *fp; size_t len; + int rv; fp = fopen(filename, "r"); if (fp == NULL) { @@ -339,8 +340,11 @@ parse_file(const char *filename, unsigne } len = strlen(filename); if (len > 4 && strcasecmp(filename + len - 4, ".hex") == 0) - return parse_hex(fp, map_idx); - return parse_bdf(fp, map_idx); + rv = parse_hex(fp, map_idx); + else + rv = parse_bdf(fp, map_idx); + fclose(fp); + return (rv); } static void @@ -447,6 +451,7 @@ write_fnt(const char *filename) fh.map_count[3] = htobe32(map_folded_count[3]); if (fwrite(&fh, sizeof fh, 1, fp) != 1) { perror(filename); + fclose(fp); return (1); } @@ -456,9 +461,11 @@ write_fnt(const char *filename) write_mappings(fp, VFNT_MAP_BOLD) != 0 || write_mappings(fp, 3) != 0) { perror(filename); + fclose(fp); return (1); } + fclose(fp); return (0); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201406111719.s5BHJw3O090628>