diff options
author | anders <anders@FreeBSD.org> | 2002-04-22 06:01:17 +0800 |
---|---|---|
committer | anders <anders@FreeBSD.org> | 2002-04-22 06:01:17 +0800 |
commit | f81aa7a89b5138aa2977e3647d82457616b2dfcf (patch) | |
tree | 953dfbd54b2a1f86031a91f9f298332d5ff147e4 /net/rsync/files | |
parent | 830c01260898bf8cb8472913e3c88afb86631e1b (diff) | |
download | freebsd-ports-gnome-f81aa7a89b5138aa2977e3647d82457616b2dfcf.tar.gz freebsd-ports-gnome-f81aa7a89b5138aa2977e3647d82457616b2dfcf.tar.zst freebsd-ports-gnome-f81aa7a89b5138aa2977e3647d82457616b2dfcf.zip |
Revoke previous changes to fix -z (compress) option in favor of a GCC
work-around for the zlib that comes with rsync. Obtained from -current.
(Yes, rsync insists on using a home-rolled zlib.)
PR: 36998
Approved by: maintainer
Diffstat (limited to 'net/rsync/files')
-rw-r--r-- | net/rsync/files/patch-infcodes.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/net/rsync/files/patch-infcodes.c b/net/rsync/files/patch-infcodes.c new file mode 100644 index 000000000000..0dd0d99f67d7 --- /dev/null +++ b/net/rsync/files/patch-infcodes.c @@ -0,0 +1,21 @@ +--- zlib/infcodes.c.orig Tue Mar 12 02:14:58 2002 ++++ zlib/infcodes.c Sun Apr 21 21:19:46 2002 +@@ -197,8 +197,18 @@ + c->mode = COPY; + case COPY: /* o: copying bytes in window, waiting for space */ + f = q - c->sub.copy.dist; ++#ifdef __FreeBSD__ ++ { ++ /* Work-around for a FreeBSD gcc bug. */ ++ volatile inflate_blocks_statef *s1 = s; ++ ++ while (f < s1->window) /* modulo window size-"while" instead */ ++ f += s1->end - s1->window; /* of "if" handles invalid distances */ ++ } ++#else + while (f < s->window) /* modulo window size-"while" instead */ + f += s->end - s->window; /* of "if" handles invalid distances */ ++#endif + while (c->len) + { + NEEDOUT |