summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Deutschmann <whissi@gentoo.org>2019-01-11 02:34:21 +0100
committerThomas Deutschmann <whissi@gentoo.org>2019-01-11 02:34:21 +0100
commitef8f8b69456c968e4d7a467fa708419f55891f0b (patch)
treef7de1adb124be7c27bcf02f2527c3db18d483063 /app-arch/tar
parentmedia-libs/vidstab: Video stabilization library (diff)
downloadgentoo-ef8f8b69456c968e4d7a467fa708419f55891f0b.tar.gz
gentoo-ef8f8b69456c968e4d7a467fa708419f55891f0b.tar.bz2
gentoo-ef8f8b69456c968e4d7a467fa708419f55891f0b.zip
app-arch/tar: remove misplaced call to abort()
Closes: https://bugs.gentoo.org/675140 Package-Manager: Portage-2.3.54, Repoman-2.3.12 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
Diffstat (limited to 'app-arch/tar')
-rw-r--r--app-arch/tar/files/tar-1.31-remove-erroneous-abort-call.patch33
-rw-r--r--app-arch/tar/tar-1.31-r1.ebuild (renamed from app-arch/tar/tar-1.31.ebuild)2
2 files changed, 35 insertions, 0 deletions
diff --git a/app-arch/tar/files/tar-1.31-remove-erroneous-abort-call.patch b/app-arch/tar/files/tar-1.31-remove-erroneous-abort-call.patch
new file mode 100644
index 000000000000..9e255df57602
--- /dev/null
+++ b/app-arch/tar/files/tar-1.31-remove-erroneous-abort-call.patch
@@ -0,0 +1,33 @@
+From 85c005ee1345c342f707f3c55317daf6cb050603 Mon Sep 17 00:00:00 2001
+From: Sergey Poznyakoff <gray@gnu.org.ua>
+Date: Thu, 10 Jan 2019 18:18:49 +0200
+Subject: Remove erroneous abort() call
+
+The call was introduced by commit ccef8581. It caused tar to abort
+on perfectly normal operations, like untarring archives containing
+./ with the -U option,
+
+See http://lists.gnu.org/archive/html/bug-tar/2019-01/msg00019.html
+for details.
+
+* src/extract.c (maybe_recoverable): Remove misplaced call to abort().
+---
+ src/extract.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/extract.c b/src/extract.c
+index 090b866..8276f8f 100644
+--- a/src/extract.c
++++ b/src/extract.c
+@@ -787,7 +787,7 @@ maybe_recoverable (char *file_name, bool regular, bool *interdir_made)
+ case UNLINK_FIRST_OLD_FILES:
+ break;
+ }
+- abort (); /* notreached */
++ FALLTHROUGH;
+
+ case ENOENT:
+ /* Attempt creating missing intermediate directories. */
+--
+cgit v1.0-41-gc330
+
diff --git a/app-arch/tar/tar-1.31.ebuild b/app-arch/tar/tar-1.31-r1.ebuild
index 2e7d5290465f..6a36e7eb01ee 100644
--- a/app-arch/tar/tar-1.31.ebuild
+++ b/app-arch/tar/tar-1.31-r1.ebuild
@@ -24,6 +24,8 @@ DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )
xattr? ( elibc_glibc? ( sys-apps/attr ) )"
+PATCHES=( "${FILESDIR}"/${P}-remove-erroneous-abort-call.patch )
+
src_prepare() {
default