cpio/cpio-2.10-longnames-split.patch
Petr Šabata dce45e02bf RHEL 9.0.0 Alpha bootstrap
The content of this branch was automatically imported from Fedora ELN
with the following as its source:
https://src.fedoraproject.org/rpms/cpio#b2d7cef5976b300ce3f2580046e97b0124804777
2020-10-14 23:14:40 +02:00

28 lines
674 B
Diff

From: Pavel Raiskup <praiskup@redhat.com>
Date: Mon, 14 Sep 2015 09:49:12 +0200
Subject: [PATCH 6/7] Fix for splitting long file names while creating ustar
archive
Resolves: #866467
diff --git a/src/tar.c b/src/tar.c
index a2ce171..e2b5f45 100644
--- a/src/tar.c
+++ b/src/tar.c
@@ -49,10 +49,12 @@ split_long_name (const char *name, size_t length)
{
size_t i;
- if (length > TARPREFIXSIZE)
- length = TARPREFIXSIZE+2;
+ if (length > TARPREFIXSIZE + 1)
+ length = TARPREFIXSIZE + 1;
+ else if (ISSLASH (name[length - 1]))
+ length--;
for (i = length - 1; i > 0; i--)
- if (name[i] == '/')
+ if (ISSLASH (name[i]))
break;
return i;
}