From acda2563cea2acacdb126a6c14a144a9bf52e3a3 Mon Sep 17 00:00:00 2001
From: =?utf8?q?Mat=C4=9Bj=20Hump=C3=A1l?= <finwe@finwe.info>
Date: Thu, 2 Feb 2017 10:24:00 +0100
Subject: [PATCH] Fix bug #74031

Fix incorrect parameter count for imagepng function
---
 NEWS                       |  4 ++++
 ext/gd/gd.c                |  2 ++
 ext/gd/tests/bug74031.phpt | 10 ++++++++++
 3 files changed, 16 insertions(+)
 create mode 100644 ext/gd/tests/bug74031.phpt

diff --git a/NEWS b/NEWS
index 3d402c6798..249830d262 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,10 @@ PHP                                                                        NEWS
   . Fixed bug #73807 (Performance problem with processing large post request).
     (Nikita)
 
+- GD:
+  . Fixed bug #74031 (ReflectionFunction for imagepng is missing last two
+    parameters). (finwe)
+
 - OpenSSL:
   . Fixed bug #74022 (PHP Fast CGI crashes when reading from a pfx file).
     (Anatol)
diff --git a/ext/gd/gd.c b/ext/gd/gd.c
index 4f9e2f8fc6..ec2a037357 100644
--- a/ext/gd/gd.c
+++ b/ext/gd/gd.c
@@ -368,6 +368,8 @@ ZEND_END_ARG_INFO()
 ZEND_BEGIN_ARG_INFO_EX(arginfo_imagepng, 0, 0, 1)
 	ZEND_ARG_INFO(0, im)
 	ZEND_ARG_INFO(0, filename)
+	ZEND_ARG_INFO(0, quality)
+	ZEND_ARG_INFO(0, filters)
 ZEND_END_ARG_INFO()
 #endif
 
diff --git a/ext/gd/tests/bug74031.phpt b/ext/gd/tests/bug74031.phpt
new file mode 100644
index 0000000000..e5d6d7091e
--- /dev/null
+++ b/ext/gd/tests/bug74031.phpt
@@ -0,0 +1,10 @@
+--TEST--
+(Bug #74031) ReflectionFunction for imagepng returns wrong number of parameters
+--FILE--
+<?php
+
+$ref = new ReflectionFunction('imagepng');
+var_dump(count($ref->getParameters()));
+?>
+--EXPECT--
+int(4)
-- 
2.40.0