diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-07-20 17:10:43 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-07-20 17:10:43 +0000 |
commit | adc772a5f2b5b74f398aaa59c36739fee4ee7a85 (patch) | |
tree | c523a374fd7e9ec52fc935fa84f85dd068723998 /archival/libunarchive/seek_by_jump.c | |
parent | b9bbc40f64f305dd09d8f3f31eb5632521f87f0c (diff) | |
download | busybox-w32-adc772a5f2b5b74f398aaa59c36739fee4ee7a85.tar.gz busybox-w32-adc772a5f2b5b74f398aaa59c36739fee4ee7a85.tar.bz2 busybox-w32-adc772a5f2b5b74f398aaa59c36739fee4ee7a85.zip |
tar: fix handling of tarballs with symlinks with size field != 0
Diffstat (limited to 'archival/libunarchive/seek_by_jump.c')
-rw-r--r-- | archival/libunarchive/seek_by_jump.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/archival/libunarchive/seek_by_jump.c b/archival/libunarchive/seek_by_jump.c index 031598e7a..0a259c963 100644 --- a/archival/libunarchive/seek_by_jump.c +++ b/archival/libunarchive/seek_by_jump.c | |||
@@ -8,7 +8,9 @@ | |||
8 | 8 | ||
9 | void FAST_FUNC seek_by_jump(const archive_handle_t *archive_handle, unsigned amount) | 9 | void FAST_FUNC seek_by_jump(const archive_handle_t *archive_handle, unsigned amount) |
10 | { | 10 | { |
11 | if (lseek(archive_handle->src_fd, (off_t) amount, SEEK_CUR) == (off_t) -1) { | 11 | if (amount |
12 | && lseek(archive_handle->src_fd, (off_t) amount, SEEK_CUR) == (off_t) -1 | ||
13 | ) { | ||
12 | if (errno == ESPIPE) | 14 | if (errno == ESPIPE) |
13 | seek_by_read(archive_handle, amount); | 15 | seek_by_read(archive_handle, amount); |
14 | else | 16 | else |