diff options
author | Christoph M. Becker <cmb@php.net> | 2016-07-15 19:42:26 +0200 |
---|---|---|
committer | Christoph M. Becker <cmb@php.net> | 2016-07-15 19:45:52 +0200 |
commit | 3666cfab973c5aba86d0562d14de8ed74e66cdb7 (patch) | |
tree | de102b0d07b65790b9fc08df8bcda8359a728c33 | |
parent | a4aa4f9772a6c30f69db8560cde1f5fe4545b174 (diff) | |
download | php-git-3666cfab973c5aba86d0562d14de8ed74e66cdb7.tar.gz |
Fix #72604: imagearc() ignores thickness for full arcs
We remove the special casing for full arcs, what conforms to external libgd.
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | ext/gd/libgd/gd.c | 6 | ||||
-rw-r--r-- | ext/gd/tests/bug72604.phpt | 19 |
3 files changed, 21 insertions, 5 deletions
@@ -29,6 +29,7 @@ PHP NEWS - GD: . Fixed bug #72596 (imagetypes function won't advertise WEBP support). (cmb) + . Fixed bug #72604 (imagearc() ignores thickness for full arcs). (cmb) - Intl: . Partially fixed #72506 (idn_to_ascii for UTS #46 incorrect for long domain diff --git a/ext/gd/libgd/gd.c b/ext/gd/libgd/gd.c index a5799c59d5..3b5d8294e8 100644 --- a/ext/gd/libgd/gd.c +++ b/ext/gd/libgd/gd.c @@ -1673,11 +1673,7 @@ long lsqrt (long n) void gdImageArc (gdImagePtr im, int cx, int cy, int w, int h, int s, int e, int color) { - if ((s % 360) == (e % 360)) { - gdImageEllipse(im, cx, cy, w, h, color); - } else { - gdImageFilledArc(im, cx, cy, w, h, s, e, color, gdNoFill); - } + gdImageFilledArc(im, cx, cy, w, h, s, e, color, gdNoFill); } void gdImageFilledArc (gdImagePtr im, int cx, int cy, int w, int h, int s, int e, int color, int style) diff --git a/ext/gd/tests/bug72604.phpt b/ext/gd/tests/bug72604.phpt new file mode 100644 index 0000000000..b1dea5e403 --- /dev/null +++ b/ext/gd/tests/bug72604.phpt @@ -0,0 +1,19 @@ +--TEST-- +Bug #72604 (imagearc() ignores thickness for full arcs) +--SKIPIF-- +<?php +if (!extension_loaded('gd')) die('skip requires ext/gd'); +if (!(imagetypes() & IMG_PNG)) die('skip requires PNG support'); +?> +--FILE-- +<?php +$im = imagecreatetruecolor(100, 100); +imagesetthickness($im, 5); +imagearc($im, 50, 50, 90, 90, 0, 360, 0xffffff); +ob_start(); +imagepng($im); +$imagestring = ob_get_clean(); +echo md5($imagestring); +?> +--EXPECT-- +2ffa6afb915afbdf870cf6459477bc8a |