diff options
author | Denys Vlasenko | 2012-06-22 16:27:21 +0200 |
---|---|---|
committer | Denys Vlasenko | 2012-06-22 16:27:21 +0200 |
commit | 440a509849391f2dc8ec720a136577ede3306fa8 (patch) | |
tree | d52caed6f400212530c8a2b1eab6c4829a530aac /archival/libarchive | |
parent | d52c9510fd3a9407044166360fe8b752fd841efc (diff) | |
download | busybox-440a509849391f2dc8ec720a136577ede3306fa8.zip busybox-440a509849391f2dc8ec720a136577ede3306fa8.tar.gz |
dpkg: fix creation of .list files (were empty since b768aeb). Closes 5324
While at it, fix filename order and free the list of names.
function old new delta
llist_rev - 21 +21
get_header_tar 1733 1741 +8
unpack_package 587 585 -2
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/1 up/down: 29/-2) Total: 27 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'archival/libarchive')
-rw-r--r-- | archival/libarchive/get_header_tar.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/archival/libarchive/get_header_tar.c b/archival/libarchive/get_header_tar.c index b168653..bc09756 100644 --- a/archival/libarchive/get_header_tar.c +++ b/archival/libarchive/get_header_tar.c @@ -452,9 +452,11 @@ char FAST_FUNC get_header_tar(archive_handle_t *archive_handle) if (cp) *cp = '\0'; archive_handle->action_data(archive_handle); - if (archive_handle->accept || archive_handle->reject) + if (archive_handle->accept || archive_handle->reject + || (archive_handle->ah_flags & ARCHIVE_REMEMBER_NAMES) + ) { llist_add_to(&archive_handle->passed, file_header->name); - else /* Caller isn't interested in list of unpacked files */ + } else /* Caller isn't interested in list of unpacked files */ free(file_header->name); } else { data_skip(archive_handle); |