summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/xdelta/files/xdelta-1.1.4-gzip.patch')
-rw-r--r--dev-util/xdelta/files/xdelta-1.1.4-gzip.patch59
1 files changed, 59 insertions, 0 deletions
diff --git a/dev-util/xdelta/files/xdelta-1.1.4-gzip.patch b/dev-util/xdelta/files/xdelta-1.1.4-gzip.patch
new file mode 100644
index 000000000000..67696da730ce
--- /dev/null
+++ b/dev-util/xdelta/files/xdelta-1.1.4-gzip.patch
@@ -0,0 +1,59 @@
+https://bugs.gentoo.org/919228
+
+--- a/test/xdeltatest.c
++++ b/test/xdeltatest.c
+@@ -512,7 +512,7 @@ run_command (TestProfile *tp, int zlevel, int slevel, File* from, File* to, File
+ if (zlevel > 0 && starts_with (tp->name, "diff"))
+ {
+ Patch *patch = read_patch (out, & sbuf);
+- gzFile *rewrite = gzopen (out->name, diff_gzargs);
++ gzFile rewrite = gzopen (out->name, diff_gzargs);
+
+ if (! rewrite) fail ();
+
+diff --git a/xdelta-1.1.4/xdmain.c b/../../xdelta-1.1.4.new/xdmain.c
+index b1abc74..9c27195 100755
+--- a/xdmain.c
++++ b/xdmain.c
+@@ -179,6 +179,7 @@ struct _XdFileHandle
+ guint narrow_high;
+ guint current_pos;
+ FILE* in;
++ gzFile zin;
+ gboolean (* in_read) (XdFileHandle* handle, void* buf, gint nbyte);
+ gboolean (* in_close) (XdFileHandle* handle);
+ gboolean in_compressed;
+@@ -520,7 +521,7 @@ xd_gzwrite (XdFileHandle* fh, const void* buf, gint nbyte)
+ static gboolean
+ xd_gzread (XdFileHandle* fh, void* buf, gint nbyte)
+ {
+- return gzread (fh->in, buf, nbyte) == nbyte;
++ return gzread (fh->zin, buf, nbyte) == nbyte;
+ }
+
+ static gboolean
+@@ -532,7 +533,7 @@ xd_gzclose (XdFileHandle* fh)
+ static gboolean
+ xd_gzrclose (XdFileHandle* fh)
+ {
+- return gzclose (fh->in) == Z_OK;
++ return gzclose (fh->zin) == Z_OK;
+ }
+
+ static void
+@@ -1022,13 +1023,13 @@ xd_handle_narrow (XdFileHandle* fh, guint low, guint high, gboolean compressed)
+ }
+
+ g_assert (fh->fd >= 0);
+- fh->in = gzdopen (dup (fh->fd), "rb");
++ fh->zin = gzdopen (dup (fh->fd), "rb");
+ fh->in_read = &xd_gzread;
+ fh->in_close = &xd_gzrclose;
+ fh->in_compressed = TRUE;
+ fh->current_pos = 0;
+
+- if (! fh->in)
++ if (! fh->zin)
+ {
+ xd_error ("gzdopen failed: %s\n", g_strerror (errno));
+ return -1;