Make z_size_t 64 bits when compiling on Windows with Z_SOLO.
Z_SOLO defines z_size_t as an unsigned long. However Windows and
MinGW-w64 are LLP64, where a long is 32 bits, but a size_t is 64
bits. This makes z_size_t, used by adler32_z() and crc32_z(), 64
bits on those systems.
diff --git a/zconf.h b/zconf.h
index bf977d3..5733ed6 100644
--- a/zconf.h
+++ b/zconf.h
@@ -241,7 +241,11 @@
#endif
#ifdef Z_SOLO
- typedef unsigned long z_size_t;
+# ifdef _WIN64
+ typedef unsigned long long z_size_t;
+# else
+ typedef unsigned long z_size_t;
+# endif
#else
# define z_longlong long long
# if defined(NO_SIZE_T)
diff --git a/zconf.h.cmakein b/zconf.h.cmakein
index 247ba24..9cc20bf 100644
--- a/zconf.h.cmakein
+++ b/zconf.h.cmakein
@@ -243,7 +243,11 @@
#endif
#ifdef Z_SOLO
- typedef unsigned long z_size_t;
+# ifdef _WIN64
+ typedef unsigned long long z_size_t;
+# else
+ typedef unsigned long z_size_t;
+# endif
#else
# define z_longlong long long
# if defined(NO_SIZE_T)
diff --git a/zconf.h.in b/zconf.h.in
index bf977d3..5733ed6 100644
--- a/zconf.h.in
+++ b/zconf.h.in
@@ -241,7 +241,11 @@
#endif
#ifdef Z_SOLO
- typedef unsigned long z_size_t;
+# ifdef _WIN64
+ typedef unsigned long long z_size_t;
+# else
+ typedef unsigned long z_size_t;
+# endif
#else
# define z_longlong long long
# if defined(NO_SIZE_T)