diff -Naur -x '*~' -x '*.rej' -x '*.orig' expat-2.0.1/xmlwf/readfilemap.c expat-2.0.1-CVE-2012-1147/xmlwf/readfilemap.c --- expat-2.0.1/xmlwf/readfilemap.c 2006-08-06 00:43:57.000000000 +0200 +++ expat-2.0.1-CVE-2012-1147/xmlwf/readfilemap.c 2012-03-29 20:09:31.723410538 +0200 @@ -58,10 +58,12 @@ } if (fstat(fd, &sb) < 0) { perror(name); + close(fd); return 0; } if (!S_ISREG(sb.st_mode)) { fprintf(stderr, "%s: not a regular file\n", name); + close(fd); return 0; } nbytes = sb.st_size;