try Paul Eggert's upstream fix for the mingw compilation problem in 1.9
[debian/gzip] / debian / patches / 0001-gzip-port-better-to-mingw.patch
diff --git a/debian/patches/0001-gzip-port-better-to-mingw.patch b/debian/patches/0001-gzip-port-better-to-mingw.patch
new file mode 100644 (file)
index 0000000..e9e0c36
--- /dev/null
@@ -0,0 +1,41 @@
+From 222dc8c90f31f7027d0aa7a18206f5c56006f780 Mon Sep 17 00:00:00 2001
+From: Paul Eggert <eggert@cs.ucla.edu>
+Date: Sun, 29 Jul 2018 11:27:32 -0700
+Subject: [PATCH] gzip: port better to mingw
+
+Problem reported by Bdale Garbee for Debian
+* gzip.c (do_chown): Don't assume uid_t and gid_t.
+---
+ gzip.c | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/gzip.c b/gzip.c
+index 429e554..a023d81 100644
+--- a/gzip.c
++++ b/gzip.c
+@@ -1914,17 +1914,20 @@ local int check_ofname()
+    the file and NAME its name.  Change it to user UID and to group GID.
+    If UID or GID is -1, though, do not change the corresponding user
+    or group.  */
++#ifdef NO_CHOWN
++/* The types uid_t and gid_t do not exist on mingw, so don't assume them.  */
++# define do_chown(fd, name, uid, gid) ((void) 0)
++#else
+ static void
+ do_chown (int fd, char const *name, uid_t uid, gid_t gid)
+ {
+-#ifndef NO_CHOWN
+ # if HAVE_FCHOWN
+   ignore_value (fchown (fd, uid, gid));
+ # else
+   ignore_value (chown (name, uid, gid));
+ # endif
+-#endif
+ }
++#endif
+ /* ========================================================================
+  * Copy modes, times, ownership from input file to output file.
+-- 
+2.18.0
+