From 7c1601c2faec14b81c84539a64ba662cfe2b0d62 Mon Sep 17 00:00:00 2001 From: Rob Landley Date: Wed, 27 Mar 2019 21:42:41 -0500 Subject: Skip file contents in error case. --- toys/pending/tar.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/toys/pending/tar.c b/toys/pending/tar.c index 97524d87..8fb047bf 100644 --- a/toys/pending/tar.c +++ b/toys/pending/tar.c @@ -373,7 +373,11 @@ static void extract_to_disk(void) char *name = TT.hdr.name; int ala = TT.hdr.mode; - if (dirflush(name)) return; + if (dirflush(name)) { + if (S_ISREG(ala) && !TT.hdr.link_target) skippy(TT.hdr.size); + + return; + } // create path before file if necessary if (strrchr(name, '/') && mkpath(name) && errno !=EEXIST) -- cgit v1.2.3