diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2014-08-23 18:13:47 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2014-08-23 18:13:47 +0000 |
commit | fa76ca5fca946728b2deacb554748bd672d7f49d (patch) | |
tree | 8be050dc9451bdd7f17b8c2f317d8c5c2ded67f9 | |
parent | ff182b77ae80f80d29b3f55b94a268dd5a8aabbd (diff) | |
download | mandoc-fa76ca5fca946728b2deacb554748bd672d7f49d.tar.gz mandoc-fa76ca5fca946728b2deacb554748bd672d7f49d.tar.zst mandoc-fa76ca5fca946728b2deacb554748bd672d7f49d.zip |
do not leak a file descriptor on fdopen(3) failure; from doug@
-rw-r--r-- | mandocdb.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -1,4 +1,4 @@ -/* $Id: mandocdb.c,v 1.158 2014/08/16 19:00:01 schwarze Exp $ */ +/* $Id: mandocdb.c,v 1.159 2014/08/23 18:13:47 schwarze Exp $ */ /* * Copyright (c) 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2011, 2012, 2013, 2014 Ingo Schwarze <schwarze@openbsd.org> @@ -1332,6 +1332,8 @@ parse_cat(struct mpage *mpage, int fd) fopen(mpage->mlinks->file, "r") : fdopen(fd, "r"); if (NULL == stream) { + if (-1 != fd) + close(fd); if (warnings) say(mpage->mlinks->file, "&fopen"); return; |