summaryrefslogtreecommitdiff
path: root/ext/zlib/zlib.c
diff options
context:
space:
mode:
authorDaniel Lowrey <rdlowrey@php.net>2015-05-07 09:02:30 -0400
committerDaniel Lowrey <rdlowrey@php.net>2015-05-07 09:02:38 -0400
commit62b1293e3df520d104c678bc520b413386b628c5 (patch)
tree9725002b8d995954ff7b72c6233d67df0df355d1 /ext/zlib/zlib.c
parentfbd1f1f282466bd709081e104d65baf597aee666 (diff)
downloadphp-git-62b1293e3df520d104c678bc520b413386b628c5.tar.gz
Fix Z_BLOCK breakage when built against zlib < 1.2.4
Diffstat (limited to 'ext/zlib/zlib.c')
-rw-r--r--ext/zlib/zlib.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/ext/zlib/zlib.c b/ext/zlib/zlib.c
index 715fdaff1c..2b9c016a41 100644
--- a/ext/zlib/zlib.c
+++ b/ext/zlib/zlib.c
@@ -46,6 +46,13 @@
#undef gzseek
#undef gztell
+/* Z_BLOCK was added in zlib 1.2.4 and stable distros (RHEL6, at least) still
+ * package zlib 1.2.3
+ */
+#ifdef Z_BLOCK
+#define HAVE_Z_BLOCK 1
+#endif
+
int le_deflate;
int le_inflate;
@@ -814,7 +821,9 @@ PHP_FUNCTION(inflate_add)
case Z_PARTIAL_FLUSH:
case Z_SYNC_FLUSH:
case Z_FULL_FLUSH:
+#ifdef HAVE_Z_BLOCK
case Z_BLOCK:
+#endif
case Z_FINISH:
break;
@@ -960,7 +969,9 @@ PHP_FUNCTION(deflate_add)
case Z_PARTIAL_FLUSH:
case Z_SYNC_FLUSH:
case Z_FULL_FLUSH:
+#ifdef HAVE_Z_BLOCK
case Z_BLOCK:
+#endif
case Z_FINISH:
break;
@@ -1268,7 +1279,9 @@ static PHP_MINIT_FUNCTION(zlib)
REGISTER_LONG_CONSTANT("ZLIB_PARTIAL_FLUSH", Z_PARTIAL_FLUSH, CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ZLIB_SYNC_FLUSH", Z_SYNC_FLUSH, CONST_CS|CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("ZLIB_FULL_FLUSH", Z_FULL_FLUSH, CONST_CS|CONST_PERSISTENT);
+#ifdef HAVE_Z_BLOCK
REGISTER_LONG_CONSTANT("ZLIB_BLOCK", Z_BLOCK, CONST_CS|CONST_PERSISTENT);
+#endif
REGISTER_LONG_CONSTANT("ZLIB_FINISH", Z_FINISH, CONST_CS|CONST_PERSISTENT);
REGISTER_INI_ENTRIES();
return SUCCESS;