Commit 9bf9617a authored by Yang Tse's avatar Yang Tse
Browse files

Fix compiler warnings

"case label value exceeds maximum value for type" and
"comparison is always false due to limited range of data type"

Both triggered when using a bool variable as the switch variable
in a switch statement and using enums for the case targets.
parent 69565afa
Loading
Loading
Loading
Loading
+2 −10
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
 *                            | (__| |_| |  _ <| |___
 *                             \___|\___/|_| \_\_____|
 *
 * Copyright (C) 1998 - 2006, Daniel Stenberg, <daniel@haxx.se>, et al.
 * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel@haxx.se>, et al.
 *
 * This software is licensed as described in the file COPYING, which
 * you should have received as part of this distribution. The terms
@@ -53,14 +53,6 @@
#define COMMENT      0x10 /* bit 4 set: file comment present */
#define RESERVED     0xE0 /* bits 5..7: reserved */

enum zlibState {
  ZLIB_UNINIT,          /* uninitialized */
  ZLIB_INIT,            /* initialized */
  ZLIB_GZIP_HEADER,     /* reading gzip header */
  ZLIB_GZIP_INFLATING,  /* inflating gzip stream */
  ZLIB_INIT_GZIP        /* initialized in transparent gzip mode */
};

static CURLcode
process_zlib_error(struct connectdata *conn, z_stream *z)
{
@@ -76,7 +68,7 @@ process_zlib_error(struct connectdata *conn, z_stream *z)
}

static CURLcode
exit_zlib(z_stream *z, bool *zlib_init, CURLcode result)
exit_zlib(z_stream *z, zlibInitState *zlib_init, CURLcode result)
{
  inflateEnd(z);
  *zlib_init = ZLIB_UNINIT;
+11 −1
Original line number Diff line number Diff line
@@ -521,6 +521,16 @@ struct hostname {
#define KEEP_WRITE_HOLD 8 /* when set, no writing should be done but there
                             might still be data to write */

#ifdef HAVE_LIBZ
typedef enum {
  ZLIB_UNINIT,          /* uninitialized */
  ZLIB_INIT,            /* initialized */
  ZLIB_GZIP_HEADER,     /* reading gzip header */
  ZLIB_GZIP_INFLATING,  /* inflating gzip stream */
  ZLIB_INIT_GZIP        /* initialized in transparent gzip mode */
} zlibInitState;
#endif

/*
 * This struct is all the previously local variables from Curl_perform() moved
 * to struct to allow the function to return and get re-invoked better without
@@ -581,7 +591,7 @@ struct Curl_transfer_keeper {
#define COMPRESS 3              /* Not handled, added for completeness */

#ifdef HAVE_LIBZ
  bool zlib_init;               /* True if zlib already initialized;
  zlibInitState zlib_init;      /* possible zlib init state;
                                   undefined if Content-Encoding header. */
  z_stream z;                   /* State structure for zlib. */
#endif