aports/main/unzip/large-symlinks.patch
2022-07-21 08:05:40 +02:00

38 lines
1.1 KiB
Diff

From mboxrd@z Thu Jan 1 00:00:00 1970
From: Andreas Schwab <schwab@linux-m68k.org>
Subject: Re: "git archive" seems to be broken wrt zip files
Date: Sun, 11 Sep 2011 15:14:36 +0200
Jeff King <peff@peff.net> writes:
> IOW, the zip file looks right. I wonder if this is actually a bug in
> "unzip".
It is. This only happens if you have more then 16k entries and when one
of the 16k entry infos is reused it happend to be previously used for a
symlink entry.
Here's a patch for unzip60 for reference:
--- a/process.c
+++ b/process.c
@@ -1751,6 +1751,12 @@ int process_cdir_file_hdr(__G) /* ret
= (G.crec.general_purpose_bit_flag & (1 << 11)) == (1 << 11);
#endif
+#ifdef SYMLINKS
+ /* Initialize the symlink flag, may be set by the platform-specific
+ mapattr function. */
+ G.pInfo->symlink = 0;
+#endif
+
return PK_COOL;
} /* end function process_cdir_file_hdr() */
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."