pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/net/zsync



Module Name:    pkgsrc
Committed By:   ryoon
Date:           Mon Jul 27 15:38:31 UTC 2026

Modified Files:
        pkgsrc/net/zsync: Makefile distinfo
Added Files:
        pkgsrc/net/zsync/patches: patch-client.c patch-http.c patch-http.h
            patch-libzsync_sha1.c patch-libzsync_zsync.c patch-libzsync_zsync.h
            patch-make.c patch-url.c patch-url.h patch-zlib_inflate.c

Log Message:
net/zsync: Fix build with GCC 14 under NetBSD/amd64 11.99.7

* Bump PKGREVISION.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 pkgsrc/net/zsync/Makefile
cvs rdiff -u -r1.4 -r1.5 pkgsrc/net/zsync/distinfo
cvs rdiff -u -r0 -r1.1 pkgsrc/net/zsync/patches/patch-client.c \
    pkgsrc/net/zsync/patches/patch-http.c \
    pkgsrc/net/zsync/patches/patch-http.h \
    pkgsrc/net/zsync/patches/patch-libzsync_sha1.c \
    pkgsrc/net/zsync/patches/patch-libzsync_zsync.c \
    pkgsrc/net/zsync/patches/patch-libzsync_zsync.h \
    pkgsrc/net/zsync/patches/patch-make.c \
    pkgsrc/net/zsync/patches/patch-url.c pkgsrc/net/zsync/patches/patch-url.h \
    pkgsrc/net/zsync/patches/patch-zlib_inflate.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/net/zsync/Makefile
diff -u pkgsrc/net/zsync/Makefile:1.3 pkgsrc/net/zsync/Makefile:1.4
--- pkgsrc/net/zsync/Makefile:1.3       Tue Oct 29 10:54:38 2013
+++ pkgsrc/net/zsync/Makefile   Mon Jul 27 15:38:30 2026
@@ -1,16 +1,21 @@
-# $NetBSD: Makefile,v 1.3 2013/10/29 10:54:38 jperkin Exp $
+# $NetBSD: Makefile,v 1.4 2026/07/27 15:38:30 ryoon Exp $
 
 DISTNAME=      zsync-0.6.2
+PKGREVISION=   1
 CATEGORIES=    net
 MASTER_SITES=  http://zsync.moria.org.uk/download/
 EXTRACT_SUFX=  .tar.bz2
 
 MAINTAINER=    agc%NetBSD.org@localhost
-HOMEPAGE=      http://zsync.moria.org.uk/index
+HOMEPAGE=      https://zsync.moria.org.uk/
 COMMENT=       Optimising file distribution program, a 1-to-many rsync
 LICENSE=       artistic-2.0
 
 GNU_CONFIGURE= yes
-USE_LANGUAGES= c99
+USE_LANGUAGES= c
+FORCE_C_STD=   c99
+
+# for strcasecmp(3)
+CPPFLAGS.NetBSD+=      -D_NETBSD_SOURCE
 
 .include "../../mk/bsd.pkg.mk"

Index: pkgsrc/net/zsync/distinfo
diff -u pkgsrc/net/zsync/distinfo:1.4 pkgsrc/net/zsync/distinfo:1.5
--- pkgsrc/net/zsync/distinfo:1.4       Tue Oct 26 11:07:15 2021
+++ pkgsrc/net/zsync/distinfo   Mon Jul 27 15:38:30 2026
@@ -1,5 +1,15 @@
-$NetBSD: distinfo,v 1.4 2021/10/26 11:07:15 nia Exp $
+$NetBSD: distinfo,v 1.5 2026/07/27 15:38:30 ryoon Exp $
 
 BLAKE2s (zsync-0.6.2.tar.bz2) = d5dfb49daf3b0320c9abff810f81b8c4c21e9cb63f878e3bd02bcbba89defb82
 SHA512 (zsync-0.6.2.tar.bz2) = 56437594831f2320c532759805b5c51116c53c8848f14b54cfd9b76676d1d061abe7fc914264f496ed1c7922fbbd5b884166c855a2fb9eb1285f216e478c5f0d
 Size (zsync-0.6.2.tar.bz2) = 245592 bytes
+SHA1 (patch-client.c) = 948ece2c70234f754bc9e56c8432101a2c4f35eb
+SHA1 (patch-http.c) = 289756cddec3b868019d414b5ad86cd02c225f61
+SHA1 (patch-http.h) = 82994f73b0dbe648cb4c430b57535d8ab5578a75
+SHA1 (patch-libzsync_sha1.c) = 50114434d694733c3a94da18038d1de275b5e771
+SHA1 (patch-libzsync_zsync.c) = fd4f4ccdead3b2d82c9c7bc3e114576cfdf61f72
+SHA1 (patch-libzsync_zsync.h) = 1058dd6b2dd80c22672a7f26f2153030c89518c1
+SHA1 (patch-make.c) = 06d44161c2f3f522078c3795fdb49708a5e6dc18
+SHA1 (patch-url.c) = ecace30a5e022eec933cedd2b5600551da289abf
+SHA1 (patch-url.h) = 5f46c1b285c520b854692e99ded7825e50780bf5
+SHA1 (patch-zlib_inflate.c) = 87c5e066f6ac49d373734d03c0d07e084ea9a9ef

Added files:

Index: pkgsrc/net/zsync/patches/patch-client.c
diff -u /dev/null pkgsrc/net/zsync/patches/patch-client.c:1.1
--- /dev/null   Mon Jul 27 15:38:31 2026
+++ pkgsrc/net/zsync/patches/patch-client.c     Mon Jul 27 15:38:30 2026
@@ -0,0 +1,40 @@
+$NetBSD: patch-client.c,v 1.1 2026/07/27 15:38:30 ryoon Exp $
+
+--- client.c.orig      2010-09-19 20:51:53.000000000 +0000
++++ client.c
+@@ -59,7 +59,7 @@ FILE* open_zcat_pipe(const char* fname)
+         int i, j;
+ 
+         for (i = 0, j = 5; fname[i]; i++) {
+-            if (!isalnum(fname[i]))
++            if (!isalnum((unsigned char)(fname[i])))
+                 cmd[j++] = '\\';
+             cmd[j++] = fname[i];
+         }
+@@ -146,7 +146,7 @@ long long http_down;
+  * number of entries is passed by reference and updated in place. The new entry
+  * is appended to the list.
+  */
+-static void **append_ptrlist(int *n, void **p, void *a) {
++static char **append_ptrlist(int *n, char **p, void *a) {
+     if (!a)
+         return p;
+     p = realloc(p, (*n + 1) * sizeof *p);
+@@ -217,7 +217,7 @@ static char *get_filename_prefix(const char *p) {
+     else
+         t = s;
+     u = t;
+-    while (isalnum(*u)) {
++    while (isalnum((unsigned char)(*u))) {
+         u++;
+     }
+     *u = 0;
+@@ -392,7 +392,7 @@ int fetch_remaining_blocks(struct zsync_state *zs) {
+  */
+ int fetch_remaining_blocks(struct zsync_state *zs) {
+     int n, utype;
+-    const char *const *url = zsync_get_urls(zs, &n, &utype);
++    char **url = zsync_get_urls(zs, &n, &utype);
+     int *status;        /* keep status for each URL - 0 means no error */
+     int ok_urls = n;
+ 
Index: pkgsrc/net/zsync/patches/patch-http.c
diff -u /dev/null pkgsrc/net/zsync/patches/patch-http.c:1.1
--- /dev/null   Mon Jul 27 15:38:31 2026
+++ pkgsrc/net/zsync/patches/patch-http.c       Mon Jul 27 15:38:30 2026
@@ -0,0 +1,47 @@
+$NetBSD: patch-http.c,v 1.1 2026/07/27 15:38:30 ryoon Exp $
+
+--- http.c.orig        2010-09-19 20:51:53.000000000 +0000
++++ http.c
+@@ -89,7 +89,7 @@ FILE *http_get_stream(int fd, int *code) {
+  */
+ FILE *http_get_stream(int fd, int *code) {
+     FILE *f = fdopen(fd, "r");
+-    char buf[256];
++    char buf[256 + 4];
+     char *p;
+ 
+     if (fgets(buf, sizeof(buf), f) == NULL || memcmp(buf, "HTTP/1", 6) != 0
+@@ -160,7 +160,7 @@ char *referer;
+  * Sets the proxy settings for HTTP connections to use; these can be either as
+  * a host[:port] or as http://host[:port].
+  * Returns non-zero if the settings were obtained successfully. */
+-int set_proxy_from_string(const char *s) {
++int set_proxy_from_string(char *s) {
+     if (!memcmp(s, http_scheme, strlen(http_scheme))) {
+         /* http:// style proxy string */
+         proxy = malloc(256);
+@@ -539,11 +539,12 @@ struct range_fetch {
+  * Set up a range_fetch to fetch from a given URL. Private method. 
+  * C is a nightmare for memory allocation here. At least the errors should be
+  * caught, but minor memory leaks may occur on some error paths. */
+-static int range_fetch_set_url(struct range_fetch* rf, const char* orig_url) {
++static int range_fetch_set_url(struct range_fetch* rf, char* orig_url) {
+     /* Get the host, port and path from the URL. */
+-    char hostn[sizeof(rf->hosth)];
++    unsigned int hostnsz = sizeof(rf->hosth) - 4;
++    char hostn[hostnsz];
+     char* cport;
+-    char* p = get_http_host_port(orig_url, hostn, sizeof(hostn), &cport);
++    char* p = get_http_host_port(orig_url, hostn, hostnsz, &cport);
+     if (!p) {
+         return 0;
+     }
+@@ -658,7 +659,7 @@ static char *rfgets(char *buf, size_t len, struct rang
+ /* range_fetch_start(origin_url)
+  * Returns a new range fetch object, for the given URL.
+  */
+-struct range_fetch *range_fetch_start(const char *orig_url) {
++struct range_fetch *range_fetch_start(char *orig_url) {
+     struct range_fetch *rf = malloc(sizeof(struct range_fetch));
+     if (!rf)
+         return NULL;
Index: pkgsrc/net/zsync/patches/patch-http.h
diff -u /dev/null pkgsrc/net/zsync/patches/patch-http.h:1.1
--- /dev/null   Mon Jul 27 15:38:31 2026
+++ pkgsrc/net/zsync/patches/patch-http.h       Mon Jul 27 15:38:30 2026
@@ -0,0 +1,20 @@
+$NetBSD: patch-http.h,v 1.1 2026/07/27 15:38:30 ryoon Exp $
+
+--- http.h.orig        2010-09-16 17:17:49.000000000 +0000
++++ http.h
+@@ -18,13 +18,13 @@ extern char *referer;
+ 
+ extern char *referer;
+ 
+-int set_proxy_from_string(const char* s);
++int set_proxy_from_string(char* s);
+ 
+ FILE* http_get(const char* orig_url, char** track_referer, const char* tfname);
+ 
+ struct range_fetch;
+ 
+-struct range_fetch* range_fetch_start(const char* orig_url);
++struct range_fetch* range_fetch_start(char* orig_url);
+ void range_fetch_addranges(struct range_fetch* rf, off_t* ranges, int nranges);
+ int get_range_block(struct range_fetch* rf, off_t* offset, unsigned char* data, size_t dlen);
+ off_t range_fetch_bytes_down(const struct range_fetch* rf);
Index: pkgsrc/net/zsync/patches/patch-libzsync_sha1.c
diff -u /dev/null pkgsrc/net/zsync/patches/patch-libzsync_sha1.c:1.1
--- /dev/null   Mon Jul 27 15:38:31 2026
+++ pkgsrc/net/zsync/patches/patch-libzsync_sha1.c      Mon Jul 27 15:38:30 2026
@@ -0,0 +1,14 @@
+$NetBSD: patch-libzsync_sha1.c,v 1.1 2026/07/27 15:38:30 ryoon Exp $
+
+* Include endian.h for BYTE_ORDER.
+
+--- libzsync/sha1.c.orig       2026-07-27 00:54:33.490255126 +0000
++++ libzsync/sha1.c
+@@ -23,6 +23,7 @@ static const char rcsid[] = "$OpenBSD: sha1.c,v 1.19 2
+ #include <sys/param.h>
+ #include <stdint.h>
+ #include <string.h>
++#include <endian.h>
+ #include "sha1.h"
+ 
+ #define rol(value, bits) (((value) << (bits)) | ((value) >> (32 - (bits))))
Index: pkgsrc/net/zsync/patches/patch-libzsync_zsync.c
diff -u /dev/null pkgsrc/net/zsync/patches/patch-libzsync_zsync.c:1.1
--- /dev/null   Mon Jul 27 15:38:31 2026
+++ pkgsrc/net/zsync/patches/patch-libzsync_zsync.c     Mon Jul 27 15:38:30 2026
@@ -0,0 +1,89 @@
+$NetBSD: patch-libzsync_zsync.c,v 1.1 2026/07/27 15:38:30 ryoon Exp $
+
+* Use calloc properly as calloc(num, size).
+
+--- libzsync/zsync.c.orig      2010-09-19 20:51:53.000000000 +0000
++++ libzsync/zsync.c
+@@ -151,7 +151,7 @@ struct zsync_state *zsync_begin(FILE * f) {
+     char *safelines = NULL;
+ 
+     /* Allocate memory for the object */
+-    struct zsync_state *zs = calloc(sizeof *zs, 1);
++    struct zsync_state *zs = calloc(1, sizeof *zs);
+ 
+     if (!zs)
+         return NULL;
+@@ -210,7 +210,7 @@ struct zsync_state *zsync_begin(FILE * f) {
+             }
+             else if (!strcmp(buf, "Blocksize")) {
+                 zs->blocksize = atol(p);
+-                if (zs->blocksize < 0 || (zs->blocksize & (zs->blocksize - 1))) {
++                if ((zs->blocksize & (zs->blocksize - 1))) {
+                     fprintf(stderr, "nonsensical blocksize %ld\n", zs->blocksize);
+                     free(zs);
+                     return NULL;
+@@ -240,7 +240,7 @@ struct zsync_state *zsync_begin(FILE * f) {
+ 
+                 zblock = malloc(nzblocks * sizeof *zblock);
+                 if (zblock) {
+-                    if (fread(zblock, sizeof *zblock, nzblocks, f) < nzblocks) {
++                    if (fread(zblock, sizeof *zblock, nzblocks, f) < (size_t)nzblocks) {
+                         fprintf(stderr, "premature EOF after Z-Map\n");
+                         free(zs);
+                         return NULL;
+@@ -436,7 +436,7 @@ void zsync_progress(const struct zsync_state *zs, long
+  * Note that these URLs could be for encoded versions of the target; a 'type'
+  * is returned in *type which tells libzsync in later calls what version of the
+  * target is being retrieved. */
+-const char *const *zsync_get_urls(struct zsync_state *zs, int *n, int *t) {
++char **zsync_get_urls(struct zsync_state *zs, int *n, int *t) {
+     if (zs->zmap && zs->nzurl) {
+         *n = zs->nzurl;
+         *t = 1;
+@@ -701,7 +701,7 @@ static int zsync_recompress(struct zsync_state *zs) {
+                     p = skip_zhead(buf);
+                     skip = 0;
+                 }
+-                if (fwrite(p, 1, r - (p - buf), zout) != r - (p - buf)) {
++                if (fwrite(p, 1, r - (p - buf), zout) != (size_t)(r - (p - buf))) {
+                     perror("fwrite");
+                     rc = -1;
+                     goto leave_it;
+@@ -912,7 +912,7 @@ static int zsync_receive_data_compressed(struct zsync_
+  * expected checksum for the corresponding blocks)
+  */
+ static int zsync_receive_data_compressed(struct zsync_receiver *zr,
+-                              const unsigned char *buf, off_t offset,
++                              unsigned char *buf, off_t offset,
+                               size_t len) {
+     int ret = 0;
+     int eoz = 0;
+@@ -925,9 +925,9 @@ static int zsync_receive_data_compressed(struct zsync_
+     zr->strm.next_in = buf;
+     zr->strm.avail_in = len;
+ 
+-    if (zr->strm.total_in == 0 || offset != zr->strm.total_in) {
++    if (zr->strm.total_in == 0 || offset != (off_t)(zr->strm.total_in)) {
+         zsync_configure_zstream_for_zdata(zr->zs, &(zr->strm), offset,
+-                                          &(zr->outoffset));
++                                          (long long *)(&(zr->outoffset)));
+ 
+         /* On first iteration, we might be reading an incomplete block from zsync's point of view. Limit avail_out so we can stop after doing that and realign with the buffer. */
+         zr->strm.avail_out = blocksize - (zr->outoffset % blocksize);
+@@ -952,6 +952,7 @@ static int zsync_receive_data_compressed(struct zsync_
+         switch (rc) {
+         case Z_STREAM_END:
+             eoz = 1;
++            /* FALLTHROUGH */
+         case Z_BUF_ERROR:
+         case Z_OK:
+             if (zr->strm.avail_out == 0 || eoz) {
+@@ -991,7 +992,7 @@ static int zsync_receive_data_compressed(struct zsync_
+  * Returns 0 unless there's an error (e.g. the submitted data doesn't match the
+  * expected checksum for the corresponding blocks)
+  */
+-int zsync_receive_data(struct zsync_receiver *zr, const unsigned char *buf,
++int zsync_receive_data(struct zsync_receiver *zr, unsigned char *buf,
+                        off_t offset, size_t len) {
+     if (zr->url_type == 1) {
+         return zsync_receive_data_compressed(zr, buf, offset, len);
Index: pkgsrc/net/zsync/patches/patch-libzsync_zsync.h
diff -u /dev/null pkgsrc/net/zsync/patches/patch-libzsync_zsync.h:1.1
--- /dev/null   Mon Jul 27 15:38:31 2026
+++ pkgsrc/net/zsync/patches/patch-libzsync_zsync.h     Mon Jul 27 15:38:30 2026
@@ -0,0 +1,20 @@
+$NetBSD: patch-libzsync_zsync.h,v 1.1 2026/07/27 15:38:30 ryoon Exp $
+
+--- libzsync/zsync.h.orig      2010-09-16 17:17:49.000000000 +0000
++++ libzsync/zsync.h
+@@ -58,7 +58,7 @@ int zsync_submit_source_file(struct zsync_state* zs, F
+  * (the URL pointers are still referenced by the library, and are valid only until zsync_end).
+  */
+ 
+-const char * const * zsync_get_urls(struct zsync_state* zs, int* n, int* t);
++char ** zsync_get_urls(struct zsync_state* zs, int* n, int* t);
+ 
+ /* zsync_needed_byte_ranges - get the byte ranges needed from a URL.
+  * Returns the number of ranges in *num, and a malloc'd array (to be freed 
+@@ -91,5 +91,5 @@ void zsync_end_receive(struct zsync_receiver* zr);
+ 
+ /* Supply data buf of length len received corresponding to offset offset from the URL.
+  * Returns 0 for success; if not, you should not submit more data. */
+-int zsync_receive_data(struct zsync_receiver* zr, const unsigned char* buf, off_t offset, size_t len);
++int zsync_receive_data(struct zsync_receiver* zr, unsigned char* buf, off_t offset, size_t len);
+ 
Index: pkgsrc/net/zsync/patches/patch-make.c
diff -u /dev/null pkgsrc/net/zsync/patches/patch-make.c:1.1
--- /dev/null   Mon Jul 27 15:38:31 2026
+++ pkgsrc/net/zsync/patches/patch-make.c       Mon Jul 27 15:38:30 2026
@@ -0,0 +1,31 @@
+$NetBSD: patch-make.c,v 1.1 2026/07/27 15:38:30 ryoon Exp $
+
+--- make.c.orig        2010-09-16 17:17:49.000000000 +0000
++++ make.c
+@@ -441,7 +441,7 @@ static char *encode_filename(const char *fname) {
+     {   /* pass through string character by character */
+         int i, j;
+         for (i = j = 0; fname[i]; i++) {
+-            if (!isalnum(fname[i]))
++            if (!isalnum((unsigned char)(fname[i])))
+                 cmd[j++] = '\\';
+             cmd[j++] = fname[i];
+         }
+@@ -718,7 +718,7 @@ int main(int argc, char **argv) {
+     read_stream_write_blocksums(instream, tf);
+ 
+     {   /* Decide how long a rsum hash and checksum hash per block we need for this file */
+-        seq_matches = len > blocksize ? 2 : 1;
++        seq_matches = len > (off_t)blocksize ? 2 : 1;
+         rsum_len = ceil(((log(len) + log(blocksize)) / log(2) - 8.6) / seq_matches / 8);
+ 
+         /* min and max lengths of rsums to store */
+@@ -836,7 +836,7 @@ int main(int argc, char **argv) {
+                     fprintf(fout, "MTime: %s\n", buf);
+             }
+             else {
+-                fprintf(stderr, "error converting %d to struct tm\n", mtime);
++                fprintf(stderr, "error converting %ld to struct tm\n", mtime);
+             }
+         }
+     }
Index: pkgsrc/net/zsync/patches/patch-url.c
diff -u /dev/null pkgsrc/net/zsync/patches/patch-url.c:1.1
--- /dev/null   Mon Jul 27 15:38:31 2026
+++ pkgsrc/net/zsync/patches/patch-url.c        Mon Jul 27 15:38:30 2026
@@ -0,0 +1,13 @@
+$NetBSD: patch-url.c,v 1.1 2026/07/27 15:38:30 ryoon Exp $
+
+--- url.c.orig 2026-07-27 14:30:13.132895329 +0000
++++ url.c
+@@ -36,7 +36,7 @@ const char http_scheme[] = { "http://"; };
+  * return value is the path part of the URL, a malloced string.
+  * Or return value NULL on failure (host and port could have been written to).
+  */
+-char *get_http_host_port(const char *url, char *hostn, int hnlen, char **port) {
++char *get_http_host_port(char *url, char *hostn, int hnlen, char **port) {
+     char *p, *q;
+ 
+     /* Check it's HTTP */
Index: pkgsrc/net/zsync/patches/patch-url.h
diff -u /dev/null pkgsrc/net/zsync/patches/patch-url.h:1.1
--- /dev/null   Mon Jul 27 15:38:31 2026
+++ pkgsrc/net/zsync/patches/patch-url.h        Mon Jul 27 15:38:30 2026
@@ -0,0 +1,13 @@
+$NetBSD: patch-url.h,v 1.1 2026/07/27 15:38:30 ryoon Exp $
+
+--- url.h.orig 2026-07-27 14:31:08.787889570 +0000
++++ url.h
+@@ -20,7 +20,7 @@ extern const char http_scheme[];
+  * and, if present, return a (malloced) string buffer containing the port string.
+  * Or return NULL if not HTTP or other parsing failure.
+  */
+-char* get_http_host_port(const char* url, char* hostn, int hnlen, char** port);
++char* get_http_host_port(char* url, char* hostn, int hnlen, char** port);
+ 
+ char* __attribute__((pure)) make_url_absolute(const char* base, const char* url);
+ 
Index: pkgsrc/net/zsync/patches/patch-zlib_inflate.c
diff -u /dev/null pkgsrc/net/zsync/patches/patch-zlib_inflate.c:1.1
--- /dev/null   Mon Jul 27 15:38:31 2026
+++ pkgsrc/net/zsync/patches/patch-zlib_inflate.c       Mon Jul 27 15:38:31 2026
@@ -0,0 +1,127 @@
+$NetBSD: patch-zlib_inflate.c,v 1.1 2026/07/27 15:38:31 ryoon Exp $
+
+--- zlib/inflate.c.orig        2010-09-16 17:17:49.000000000 +0000
++++ zlib/inflate.c
+@@ -637,6 +637,7 @@ int flush;
+             if (state->flags & 0x0200) CRC2(state->check, hold);
+             INITBITS();
+             state->mode = EXLEN;
++            /* FALLTHROUGH */
+         case EXLEN:
+             if (state->flags & 0x0400) {
+                 NEEDBITS(16);
+@@ -645,6 +646,7 @@ int flush;
+                 INITBITS();
+             }
+             state->mode = EXTRA;
++            /* FALLTHROUGH */
+         case EXTRA:
+             if (state->flags & 0x0400) {
+                 copy = state->length;
+@@ -659,6 +661,7 @@ int flush;
+                 if (state->length) goto inf_leave;
+             }
+             state->mode = NAME;
++            /* FALLTHROUGH */
+         case NAME:
+             if (state->flags & 0x0800) {
+                 if (have == 0) goto inf_leave;
+@@ -673,6 +676,7 @@ int flush;
+                 if (len) goto inf_leave;
+             }
+             state->mode = COMMENT;
++            /* FALLTHROUGH */
+         case COMMENT:
+             if (state->flags & 0x1000) {
+                 if (have == 0) goto inf_leave;
+@@ -687,6 +691,7 @@ int flush;
+                 if (len) goto inf_leave;
+             }
+             state->mode = HCRC;
++            /* FALLTHROUGH */
+         case HCRC:
+             if (state->flags & 0x0200) {
+                 NEEDBITS(16);
+@@ -706,6 +711,7 @@ int flush;
+             strm->adler = state->check = REVERSE(hold);
+             INITBITS();
+             state->mode = DICT;
++            /* FALLTHROUGH */
+         case DICT:
+             if (state->havedict == 0) {
+                 RESTORE();
+@@ -713,8 +719,10 @@ int flush;
+             }
+             strm->adler = state->check = adler32(0L, Z_NULL, 0);
+             state->mode = TYPE;
++            /* FALLTHROUGH */
+         case TYPE:
+             if (flush == Z_BLOCK) goto inf_leave;
++            /* FALLTHROUGH */
+         case TYPEDO:
+             if (state->last) {
+                 BYTEBITS();
+@@ -760,6 +768,7 @@ int flush;
+                     state->length));
+             INITBITS();
+             state->mode = COPY;
++            /* FALLTHROUGH */
+         case COPY:
+             copy = state->length;
+             if (copy) {
+@@ -890,6 +899,7 @@ int flush;
+             }
+             Tracev((stderr, "inflate:       codes ok\n"));
+             state->mode = LEN;
++            /* FALLTHROUGH */
+         case LEN:
+           state->mode = LENDO;
+           goto inf_leave;
+@@ -931,6 +941,7 @@ int flush;
+             }
+             state->extra = (unsigned)(this.op) & 15;
+             state->mode = LENEXT;
++            /* FALLTHROUGH */
+         case LENEXT:
+             if (state->extra) {
+                 NEEDBITS(state->extra);
+@@ -939,6 +950,7 @@ int flush;
+             }
+             Tracevv((stderr, "inflate:         length %u\n", state->length));
+             state->mode = DIST;
++            /* FALLTHROUGH */
+         case DIST:
+             for (;;) {
+                 this = state->distcode[BITS(state->distbits)];
+@@ -964,6 +976,7 @@ int flush;
+             state->offset = (unsigned)this.val;
+             state->extra = (unsigned)(this.op) & 15;
+             state->mode = DISTEXT;
++            /* FALLTHROUGH */
+         case DISTEXT:
+             if (state->extra) {
+                 NEEDBITS(state->extra);
+@@ -977,6 +990,7 @@ int flush;
+             }
+             Tracevv((stderr, "inflate:         distance %u\n", state->offset));
+             state->mode = MATCH;
++            /* FALLTHROUGH */
+         case MATCH:
+             if (left == 0) goto inf_leave;
+             copy = out - left;
+@@ -1032,6 +1046,7 @@ int flush;
+             }
+ #ifdef GUNZIP
+             state->mode = LENGTH;
++            /* FALLTHROUGH */
+         case LENGTH:
+             if (state->wrap && state->flags) {
+                 NEEDBITS(32);
+@@ -1045,6 +1060,7 @@ int flush;
+             }
+ #endif
+             state->mode = DONE;
++            /* FALLTHROUGH */
+         case DONE:
+             ret = Z_STREAM_END;
+             goto inf_leave;



Home | Main Index | Thread Index | Old Index