diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2006-09-03 14:04:33 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2006-09-03 14:04:33 +0000 |
commit | 314908da9e156e3100275598dde6848da038d65d (patch) | |
tree | d12f6ab92f2435ac599eb1f45b7bfeb8d7aafc1f /archival/tar.c | |
parent | 65113e8d97c62b6aed560ac73961c8a9020c1568 (diff) | |
download | busybox-w32-314908da9e156e3100275598dde6848da038d65d.tar.gz busybox-w32-314908da9e156e3100275598dde6848da038d65d.tar.bz2 busybox-w32-314908da9e156e3100275598dde6848da038d65d.zip |
tar: revert older fix (non-portable), added new one.
testsuite tar-extracts-all-subdirs now passes.
Diffstat (limited to 'archival/tar.c')
-rw-r--r-- | archival/tar.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/archival/tar.c b/archival/tar.c index 160731ea9..0b5720f3b 100644 --- a/archival/tar.c +++ b/archival/tar.c | |||
@@ -545,8 +545,12 @@ static llist_t *append_file_list_to_list(llist_t *list) | |||
545 | tmp = cur; | 545 | tmp = cur; |
546 | cur = cur->link; | 546 | cur = cur->link; |
547 | free(tmp); | 547 | free(tmp); |
548 | while ((line = bb_get_chomped_line_from_file(src_stream)) != NULL) | 548 | while ((line = bb_get_chomped_line_from_file(src_stream)) != NULL) { |
549 | char *filename_ptr = last_char_is(line, '/'); | ||
550 | if (filename_ptr > line) | ||
551 | *filename_ptr = '\0'; | ||
549 | llist_add_to(&newlist, line); | 552 | llist_add_to(&newlist, line); |
553 | } | ||
550 | fclose(src_stream); | 554 | fclose(src_stream); |
551 | } | 555 | } |
552 | return newlist; | 556 | return newlist; |