From: Sergiu Dotenco Date: Mon, 5 May 2014 14:18:51 +0000 (+0200) Subject: check handle validity when closing a file X-Git-Tag: v3.1.900a~295^2~4^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F80%2Fhead;p=thirdparty%2Flibarchive.git check handle validity when closing a file This eliminates an assertion under Windows that occurs when an archive cannot be opened. --- diff --git a/libarchive/archive_write_open_filename.c b/libarchive/archive_write_open_filename.c index 196b770e8..66e0dfee9 100644 --- a/libarchive/archive_write_open_filename.c +++ b/libarchive/archive_write_open_filename.c @@ -243,7 +243,10 @@ file_close(struct archive *a, void *client_data) struct write_file_data *mine = (struct write_file_data *)client_data; (void)a; /* UNUSED */ - close(mine->fd); + + if (mine->fd >= 0) + close(mine->fd); + archive_mstring_clean(&mine->filename); free(mine); return (ARCHIVE_OK);