diff options
| author | Mark Adler <madler@alumni.caltech.edu> | 2024-02-08 17:35:23 -0800 |
|---|---|---|
| committer | Mark Adler <madler@alumni.caltech.edu> | 2024-02-08 18:45:49 -0800 |
| commit | 985a62d11802b44d1d1049ddd692038923da6f0b (patch) | |
| tree | 172b0f970c0922ee919f4b4a141798abcec25c2e | |
| parent | 504403f3e468bca2dc85c055d96ad392e9c7aae0 (diff) | |
| download | zlib-985a62d11802b44d1d1049ddd692038923da6f0b.tar.gz zlib-985a62d11802b44d1d1049ddd692038923da6f0b.tar.bz2 zlib-985a62d11802b44d1d1049ddd692038923da6f0b.zip | |
Address Microsoft deprecation warnings.
| -rw-r--r-- | contrib/puff/pufftest.c | 2 | ||||
| -rw-r--r-- | examples/gznorm.c | 2 | ||||
| -rw-r--r-- | examples/zpipe.c | 2 | ||||
| -rw-r--r-- | gzguts.h | 9 | ||||
| -rw-r--r-- | gzlib.c | 17 | ||||
| -rw-r--r-- | test/minigzip.c | 6 |
6 files changed, 25 insertions, 13 deletions
diff --git a/contrib/puff/pufftest.c b/contrib/puff/pufftest.c index 5f72ecc..328cb9f 100644 --- a/contrib/puff/pufftest.c +++ b/contrib/puff/pufftest.c | |||
| @@ -23,7 +23,7 @@ | |||
| 23 | #if defined(MSDOS) || defined(OS2) || defined(WIN32) || defined(__CYGWIN__) | 23 | #if defined(MSDOS) || defined(OS2) || defined(WIN32) || defined(__CYGWIN__) |
| 24 | # include <fcntl.h> | 24 | # include <fcntl.h> |
| 25 | # include <io.h> | 25 | # include <io.h> |
| 26 | # define SET_BINARY_MODE(file) setmode(fileno(file), O_BINARY) | 26 | # define SET_BINARY_MODE(file) _setmode(_fileno(file), O_BINARY) |
| 27 | #else | 27 | #else |
| 28 | # define SET_BINARY_MODE(file) | 28 | # define SET_BINARY_MODE(file) |
| 29 | #endif | 29 | #endif |
diff --git a/examples/gznorm.c b/examples/gznorm.c index 68e0a0f..2a1dda8 100644 --- a/examples/gznorm.c +++ b/examples/gznorm.c | |||
| @@ -24,7 +24,7 @@ | |||
| 24 | #if defined(MSDOS) || defined(OS2) || defined(WIN32) || defined(__CYGWIN__) | 24 | #if defined(MSDOS) || defined(OS2) || defined(WIN32) || defined(__CYGWIN__) |
| 25 | # include <fcntl.h> | 25 | # include <fcntl.h> |
| 26 | # include <io.h> | 26 | # include <io.h> |
| 27 | # define SET_BINARY_MODE(file) setmode(fileno(file), O_BINARY) | 27 | # define SET_BINARY_MODE(file) _setmode(_fileno(file), O_BINARY) |
| 28 | #else | 28 | #else |
| 29 | # define SET_BINARY_MODE(file) | 29 | # define SET_BINARY_MODE(file) |
| 30 | #endif | 30 | #endif |
diff --git a/examples/zpipe.c b/examples/zpipe.c index 83535d1..184fce5 100644 --- a/examples/zpipe.c +++ b/examples/zpipe.c | |||
| @@ -20,7 +20,7 @@ | |||
| 20 | #if defined(MSDOS) || defined(OS2) || defined(WIN32) || defined(__CYGWIN__) | 20 | #if defined(MSDOS) || defined(OS2) || defined(WIN32) || defined(__CYGWIN__) |
| 21 | # include <fcntl.h> | 21 | # include <fcntl.h> |
| 22 | # include <io.h> | 22 | # include <io.h> |
| 23 | # define SET_BINARY_MODE(file) setmode(fileno(file), O_BINARY) | 23 | # define SET_BINARY_MODE(file) _setmode(_fileno(file), O_BINARY) |
| 24 | #else | 24 | #else |
| 25 | # define SET_BINARY_MODE(file) | 25 | # define SET_BINARY_MODE(file) |
| 26 | #endif | 26 | #endif |
| @@ -17,6 +17,10 @@ | |||
| 17 | # define ZLIB_INTERNAL | 17 | # define ZLIB_INTERNAL |
| 18 | #endif | 18 | #endif |
| 19 | 19 | ||
| 20 | #if defined(_WIN32) && !defined(_CRT_SECURE_NO_WARNINGS) | ||
| 21 | # define _CRT_SECURE_NO_WARNINGS | ||
| 22 | #endif | ||
| 23 | |||
| 20 | #include <stdio.h> | 24 | #include <stdio.h> |
| 21 | #include "zlib.h" | 25 | #include "zlib.h" |
| 22 | #ifdef STDC | 26 | #ifdef STDC |
| @@ -36,13 +40,14 @@ | |||
| 36 | 40 | ||
| 37 | #if defined(__TURBOC__) || defined(_MSC_VER) || defined(_WIN32) | 41 | #if defined(__TURBOC__) || defined(_MSC_VER) || defined(_WIN32) |
| 38 | # include <io.h> | 42 | # include <io.h> |
| 43 | # include <sys/stat.h> | ||
| 39 | #endif | 44 | #endif |
| 40 | 45 | ||
| 41 | #if defined(_WIN32) | 46 | #if defined(_WIN32) && !defined(WIDECHAR) |
| 42 | # define WIDECHAR | 47 | # define WIDECHAR |
| 43 | #endif | 48 | #endif |
| 44 | 49 | ||
| 45 | #ifdef WINAPI_FAMILY | 50 | #if defined(_WIN32) || defined(WINAPI_FAMILY) |
| 46 | # define open _open | 51 | # define open _open |
| 47 | # define read _read | 52 | # define read _read |
| 48 | # define write _write | 53 | # define write _write |
| @@ -52,7 +52,8 @@ char ZLIB_INTERNAL *gz_strwinerror(DWORD error) { | |||
| 52 | msgbuf[chars] = 0; | 52 | msgbuf[chars] = 0; |
| 53 | } | 53 | } |
| 54 | 54 | ||
| 55 | wcstombs(buf, msgbuf, chars + 1); | 55 | z_size_t len; |
| 56 | wcstombs_s(&len, buf, sizeof(buf), msgbuf, chars + 1); | ||
| 56 | LocalFree(msgbuf); | 57 | LocalFree(msgbuf); |
| 57 | } | 58 | } |
| 58 | else { | 59 | else { |
| @@ -180,8 +181,7 @@ local gzFile gz_open(const void *path, int fd, const char *mode) { | |||
| 180 | /* save the path name for error messages */ | 181 | /* save the path name for error messages */ |
| 181 | #ifdef WIDECHAR | 182 | #ifdef WIDECHAR |
| 182 | if (fd == -2) { | 183 | if (fd == -2) { |
| 183 | len = wcstombs(NULL, path, 0); | 184 | if (wcstombs_s(&len, NULL, 0, path, 0) != 0) |
| 184 | if (len == (z_size_t)-1) | ||
| 185 | len = 0; | 185 | len = 0; |
| 186 | } | 186 | } |
| 187 | else | 187 | else |
| @@ -195,7 +195,7 @@ local gzFile gz_open(const void *path, int fd, const char *mode) { | |||
| 195 | #ifdef WIDECHAR | 195 | #ifdef WIDECHAR |
| 196 | if (fd == -2) | 196 | if (fd == -2) |
| 197 | if (len) | 197 | if (len) |
| 198 | wcstombs(state->path, path, len + 1); | 198 | wcstombs_s(&len, state->path, len + 1, path, len + 1); |
| 199 | else | 199 | else |
| 200 | *(state->path) = 0; | 200 | *(state->path) = 0; |
| 201 | else | 201 | else |
| @@ -228,11 +228,14 @@ local gzFile gz_open(const void *path, int fd, const char *mode) { | |||
| 228 | O_APPEND))); | 228 | O_APPEND))); |
| 229 | 229 | ||
| 230 | /* open the file with the appropriate flags (or just use fd) */ | 230 | /* open the file with the appropriate flags (or just use fd) */ |
| 231 | state->fd = fd > -1 ? fd : ( | 231 | if (fd == -1) |
| 232 | state->fd = open((const char *)path, oflag, 0666); | ||
| 232 | #ifdef WIDECHAR | 233 | #ifdef WIDECHAR |
| 233 | fd == -2 ? _wopen(path, oflag, 0666) : | 234 | else if (fd == -2) |
| 235 | _wsopen_s(&state->fd, path, oflag, _SH_DENYNO, _S_IREAD | _S_IWRITE); | ||
| 234 | #endif | 236 | #endif |
| 235 | open((const char *)path, oflag, 0666)); | 237 | else |
| 238 | state->fd = fd; | ||
| 236 | if (state->fd == -1) { | 239 | if (state->fd == -1) { |
| 237 | free(state->path); | 240 | free(state->path); |
| 238 | free(state); | 241 | free(state); |
diff --git a/test/minigzip.c b/test/minigzip.c index aa787fc..d5173b5 100644 --- a/test/minigzip.c +++ b/test/minigzip.c | |||
| @@ -39,7 +39,7 @@ | |||
| 39 | # ifdef UNDER_CE | 39 | # ifdef UNDER_CE |
| 40 | # include <stdlib.h> | 40 | # include <stdlib.h> |
| 41 | # endif | 41 | # endif |
| 42 | # define SET_BINARY_MODE(file) setmode(fileno(file), O_BINARY) | 42 | # define SET_BINARY_MODE(file) _setmode(_fileno(file), O_BINARY) |
| 43 | #else | 43 | #else |
| 44 | # define SET_BINARY_MODE(file) | 44 | # define SET_BINARY_MODE(file) |
| 45 | #endif | 45 | #endif |
| @@ -58,6 +58,10 @@ | |||
| 58 | #if defined(__MWERKS__) && __dest_os != __be_os && __dest_os != __win32_os | 58 | #if defined(__MWERKS__) && __dest_os != __be_os && __dest_os != __win32_os |
| 59 | # include <unix.h> /* for fileno */ | 59 | # include <unix.h> /* for fileno */ |
| 60 | #endif | 60 | #endif |
| 61 | #ifdef WIN32 | ||
| 62 | # define fileno _fileno | ||
| 63 | # define unlink _unlink | ||
| 64 | #endif | ||
| 61 | 65 | ||
| 62 | #if !defined(Z_HAVE_UNISTD_H) && !defined(_LARGEFILE64_SOURCE) | 66 | #if !defined(Z_HAVE_UNISTD_H) && !defined(_LARGEFILE64_SOURCE) |
| 63 | #ifndef WIN32 /* unlink already in stdio.h for WIN32 */ | 67 | #ifndef WIN32 /* unlink already in stdio.h for WIN32 */ |
