]> git.ipfire.org Git - thirdparty/libarchive.git/commitdiff
Merge pull request #2779 from AZero13/descriptor
authorTim Kientzle <kientzle@acm.org>
Fri, 7 Nov 2025 04:13:10 +0000 (20:13 -0800)
committerMartin Matuska <martin@matuska.de>
Mon, 17 Nov 2025 19:20:34 +0000 (20:20 +0100)
file_open should close if fstat fails

(cherry picked from commit e929454ec88d4689df7ea496e67b255ad5eb9d35)

libarchive/archive_write_open_filename.c

index 7d0f9bde1dbb2a59729cbdea7ffab90ec88e6414..430de21fde14e4d9f1aef8958fe17fa18d7bcd1a 100644 (file)
@@ -191,6 +191,8 @@ file_open(struct archive *a, void *client_data)
                        archive_set_error(a, errno, "Couldn't stat '%s'", mbs);
                else
                        archive_set_error(a, errno, "Couldn't stat '%ls'", wcs);
+               close(mine->fd);
+               mine->fd = -1;
                return (ARCHIVE_FATAL);
        }