summaryrefslogtreecommitdiff
path: root/unzip/patches/05-fix-uid-gid-handling
diff options
context:
space:
mode:
authorIgor Pashev <igor.pashev@nexenta.com>2013-04-17 16:22:04 +0400
committerIgor Pashev <igor.pashev@nexenta.com>2013-04-17 16:22:04 +0400
commit442b6bb69f03a09fa246f1278e7d5aa9f0da955c (patch)
tree509f842e734c60c51add3f8fd69b1b94bf6b19f7 /unzip/patches/05-fix-uid-gid-handling
parentb24bf5235b902a703ab77c9d4b47e11e173482b4 (diff)
downloadcibs-pkgs-442b6bb69f03a09fa246f1278e7d5aa9f0da955c.tar.gz
UnZip 6.0
Diffstat (limited to 'unzip/patches/05-fix-uid-gid-handling')
-rw-r--r--unzip/patches/05-fix-uid-gid-handling29
1 files changed, 29 insertions, 0 deletions
diff --git a/unzip/patches/05-fix-uid-gid-handling b/unzip/patches/05-fix-uid-gid-handling
new file mode 100644
index 0000000..3a30899
--- /dev/null
+++ b/unzip/patches/05-fix-uid-gid-handling
@@ -0,0 +1,29 @@
+From: sms
+Subject: Restore uid and gid information when requested
+Bug-Debian: http://bugs.debian.org/689212
+X-Debian-version: 6.0-8
+
+--- a/process.c
++++ b/process.c
+@@ -2904,7 +2904,7 @@
+ #ifdef IZ_HAVE_UXUIDGID
+ if (eb_len >= EB_UX3_MINLEN
+ && z_uidgid != NULL
+- && (*((EB_HEADSIZE + 0) + ef_buf) == 1)
++ && (*((EB_HEADSIZE + 0) + ef_buf) == 1))
+ /* only know about version 1 */
+ {
+ uch uid_size;
+@@ -2916,10 +2916,10 @@
+ flags &= ~0x0ff; /* ignore any previous UNIX field */
+
+ if ( read_ux3_value((EB_HEADSIZE + 2) + ef_buf,
+- uid_size, z_uidgid[0])
++ uid_size, &z_uidgid[0])
+ &&
+ read_ux3_value((EB_HEADSIZE + uid_size + 3) + ef_buf,
+- gid_size, z_uidgid[1]) )
++ gid_size, &z_uidgid[1]) )
+ {
+ flags |= EB_UX2_VALID; /* signal success */
+ }