summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSASAKI Suguru <suguru@sonik.org>2013-08-15 10:19:29 (GMT)
committer Denys Vlasenko <vda.linux@googlemail.com>2013-08-15 10:19:29 (GMT)
commit73fbe9dc86df6c7db425c2c3939ff98c8c44974e (patch)
treeb8b04f171828a93d1233bc82e175aa10cb514d35
parentfc364ba9e3e39bc8d75016a9bf66e4bbbb5a1c87 (diff)
downloadbusybox-73fbe9dc86df6c7db425c2c3939ff98c8c44974e.tar.gz
busybox-73fbe9dc86df6c7db425c2c3939ff98c8c44974e.tar.bz2
tar: fix tar -T to add entries in the exact order as the input list
This fixes tar to order files in tarball correctly in this case: $ touch 1 2 3; echo -e '1\n2\n3' | tar -T- -c | tar t 1 2 3 Signed-off-by: SASAKI Suguru <suguru@sonik.org> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--archival/tar.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/archival/tar.c b/archival/tar.c
index c0ceff5..3cd033b 100644
--- a/archival/tar.c
+++ b/archival/tar.c
@@ -679,14 +679,12 @@ static llist_t *append_file_list_to_list(llist_t *list)
char *cp = last_char_is(line, '/');
if (cp > line)
*cp = '\0';
- llist_add_to(&newlist, line);
+ llist_add_to_end(&newlist, line);
}
fclose(src_stream);
}
return newlist;
}
-#else
-# define append_file_list_to_list(x) 0
#endif
//usage:#define tar_trivial_usage