From: datauwu Date: Wed, 15 Jul 2026 14:34:01 +0000 (+0800) Subject: xar: free write file on utility-name failure X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2fc84234cf6f0ea9cdc6e58eee29523ca210e46b;p=thirdparty%2Flibarchive.git xar: free write file on utility-name failure Free the pending write file when utility name generation fails early. --- diff --git a/libarchive/archive_write_set_format_xar.c b/libarchive/archive_write_set_format_xar.c index 4478ceb58..59d94bf33 100644 --- a/libarchive/archive_write_set_format_xar.c +++ b/libarchive/archive_write_set_format_xar.c @@ -582,8 +582,10 @@ xar_write_header(struct archive_write *a, struct archive_entry *entry) return (ARCHIVE_FATAL); } r2 = file_gen_utility_names(a, file); - if (r2 < ARCHIVE_WARN) + if (r2 < ARCHIVE_WARN) { + file_free(file); return (r2); + } /* * Ignore a path which looks like the top of directory name