diff options
Diffstat (limited to 'src/libs/3rdparty/libarchive/archive_read_disk_entry_from_file.c')
-rw-r--r-- | src/libs/3rdparty/libarchive/archive_read_disk_entry_from_file.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/libs/3rdparty/libarchive/archive_read_disk_entry_from_file.c b/src/libs/3rdparty/libarchive/archive_read_disk_entry_from_file.c index 9c9cf38ee..ab0270bc2 100644 --- a/src/libs/3rdparty/libarchive/archive_read_disk_entry_from_file.c +++ b/src/libs/3rdparty/libarchive/archive_read_disk_entry_from_file.c @@ -303,9 +303,11 @@ archive_read_disk_entry_from_file(struct archive *_a, if (r1 < r) r = r1; } - r1 = setup_sparse(a, entry, &fd); - if (r1 < r) - r = r1; + if ((a->flags & ARCHIVE_READDISK_NO_SPARSE) == 0) { + r1 = setup_sparse(a, entry, &fd); + if (r1 < r) + r = r1; + } /* If we opened the file earlier in this function, close it. */ if (initial_fd != fd) |