From 5ab9f47745fe9353291b217f705086b6070575d5 Mon Sep 17 00:00:00 2001 From: Mark Adler Date: Tue, 18 Oct 2011 23:05:37 -0700 Subject: Add #define ZLIB_CONST option to use const in the z_stream interface. This permits compilers to check for the proper treatment of next_in and msg in the z_stream structure. This is an option instead of the default in order to preserve backward compatibility. Some applications make use of the z_stream structure outside of zlib, and perform operations such as free(strm->next_in), which would not be permitted when next_in is const. The #define ZLIB_CONST needs to precede the #include "zlib.h">, in order to make next_in and msg const pointers in the z_stream type. --- zlib.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'zlib.h') diff --git a/zlib.h b/zlib.h index 99cd058..14a925b 100644 --- a/zlib.h +++ b/zlib.h @@ -83,7 +83,7 @@ typedef void (*free_func) OF((voidpf opaque, voidpf address)); struct internal_state; typedef struct z_stream_s { - Bytef *next_in; /* next input byte */ + z_const Bytef *next_in; /* next input byte */ uInt avail_in; /* number of bytes available at next_in */ uLong total_in; /* total number of input bytes read so far */ @@ -91,7 +91,7 @@ typedef struct z_stream_s { uInt avail_out; /* remaining free space at next_out */ uLong total_out; /* total number of bytes output so far */ - char *msg; /* last error message, NULL if no error */ + z_const char *msg; /* last error message, NULL if no error */ struct internal_state FAR *state; /* not visible by applications */ alloc_func zalloc; /* used to allocate the internal state */ -- cgit v1.2.3-55-g6feb