]> granicus.if.org Git - php/commitdiff
Fix #70047: gd_info() doesn't report WebP support
authorChristoph M. Becker <cmb@php.net>
Sat, 11 Jul 2015 15:49:13 +0000 (17:49 +0200)
committerChristoph M. Becker <cmb@php.net>
Sat, 11 Jul 2015 15:49:13 +0000 (17:49 +0200)
Despite being documented, the array returned by gd_info() doesn't have a 'WebP
Support' key. This patch adds it.

ext/gd/gd.c
ext/gd/tests/bug70047.phpt [new file with mode: 0644]

index 72c2d480e3ea51d331520296102cd121f776bc01..a16cf0a4d174fc1f3a4fe29b3fbc319b0b228dc2 100644 (file)
@@ -1405,6 +1405,11 @@ PHP_FUNCTION(gd_info)
        add_assoc_bool(return_value, "XPM Support", 0);
 #endif
        add_assoc_bool(return_value, "XBM Support", 1);
+#ifdef HAVE_GD_WEBP
+       add_assoc_bool(return_value, "WebP Support", 1);
+#else
+       add_assoc_bool(return_value, "WebP Support", 0);
+#endif
 #if defined(USE_GD_JISX0208)
        add_assoc_bool(return_value, "JIS-mapped Japanese Font Support", 1);
 #else
diff --git a/ext/gd/tests/bug70047.phpt b/ext/gd/tests/bug70047.phpt
new file mode 100644 (file)
index 0000000..7dbf8ab
--- /dev/null
@@ -0,0 +1,15 @@
+--TEST--
+Bug #70047 (gd_info() doesn't report WebP support)
+--SKIPIF--
+<?php
+if (!extension_loaded('gd')) die('skip gd extension not available');
+?>
+--FILE--
+<?php
+$info = gd_info();
+var_dump(array_key_exists('WebP Support', $info));
+var_dump($info['WebP Support'] === function_exists('imagewebp'));
+?>
+--EXPECT--
+bool(true)
+bool(true)