/* shared functions */
void Z_INTERNAL gz_error(gz_state *, int, const char *);
-
+#ifdef ZLIB_COMPAT
+unsigned Z_INTERNAL gz_intmax(void);
+#endif
/* GT_OFF(x), where x is an unsigned value, is true if x > maximum z_off64_t
value -- needed when comparing unsigned to z_off64_t, which is signed
(possible z_off64_t types off_t, off64_t, and long are all signed) */
-unsigned Z_INTERNAL gz_intmax(void);
#define GT_OFF(x) (sizeof(int) == sizeof(z_off64_t) && (x) > INT_MAX)
#endif /* GZGUTS_H_ */
(void)snprintf(state->msg, strlen(state->path) + strlen(msg) + 3, "%s%s%s", state->path, ": ", msg);
}
-/* portably return maximum value for an int (when limits.h presumed not
- available) -- we need to do this to cover cases where 2's complement not
- used, since C standard permits 1's complement and sign-bit representations,
- otherwise we could just use ((unsigned)-1) >> 1 */
+#ifdef ZLIB_COMPAT
unsigned Z_INTERNAL gz_intmax(void) {
-#ifdef INT_MAX
return INT_MAX;
-#else
- unsigned p = 1, q;
- do {
- q = p;
- p <<= 1;
- p++;
- } while (p > q);
- return q >> 1;
-#endif
}
+#endif