diff options
Diffstat (limited to 'lib/libarchive/archive_write.c')
-rw-r--r-- | lib/libarchive/archive_write.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/libarchive/archive_write.c b/lib/libarchive/archive_write.c index 73283e4..3a999ca 100644 --- a/lib/libarchive/archive_write.c +++ b/lib/libarchive/archive_write.c @@ -201,7 +201,9 @@ archive_write_header(struct archive *a, struct archive_entry *entry) if (a->state & ARCHIVE_STATE_DATA) ((a->format_finish_entry)(a)); - if (archive_entry_dev(entry) == a->skip_file_dev && + if (a->skip_file_dev != 0 && + archive_entry_dev(entry) == a->skip_file_dev && + a->skip_file_ino != 0 && archive_entry_ino(entry) == a->skip_file_ino) { archive_set_error(a, 0, "Can't add archive to itself"); return (ARCHIVE_WARN); |