com php-src: ensure that the defined interpolation method is used by the generic scaling functions: NEWS ext/gd/libgd/gd_interpolation .c
| From: | Pierre Joye | Date: | Mon, 09 Sep 2013 09:56:05 +0000 |
| Subject: | com php-src: ensure that the defined interpolation method is used by the generic scaling functions: NEWS ext/gd/libgd/gd_interpolation .c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-73165@lists.php.net to get a copy of this message | ||
Commit: b54b6e30a4e46d9dd1f1bf0cbc0d4539c0f7d51d
Author: unknown <pajoye@php.net> Mon, 9 Sep 2013 11:56:05 +0200
Parents: 8d860c121810d6a10380241a0a51387966a503ca
Branches: PHP-5.5 master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=b54b6e30a4e46d9dd1f1bf0cbc0d4539c0f7d51d
Log:
ensure that the defined interpolation method is used by the generic scaling functions
Changed paths:
M NEWS
M ext/gd/libgd/gd_interpolation.c
Diff:
diff --git a/NEWS b/NEWS
index 817f9f7..8655571 100644
--- a/NEWS
+++ b/NEWS
@@ -30,6 +30,9 @@ PHP NEWS
. Fixed bug #65564 (stack-buffer-overflow in DateTimeZone stuff caught
by AddressSanitizer). (Remi).
+- GD
+ . Ensure that the defined interpolation method is used with the generic scaling methods (Pierre)
+
- OPCache:
. Fixed bug #65561 (Zend Opcache on Solaris 11 x86 needs ZEND_MM_ALIGNMENT=4).
(Terry Ellison)
diff --git a/ext/gd/libgd/gd_interpolation.c b/ext/gd/libgd/gd_interpolation.c
index e3247a7..3643535 100644
--- a/ext/gd/libgd/gd_interpolation.c
+++ b/ext/gd/libgd/gd_interpolation.c
@@ -1065,6 +1065,7 @@ gdImagePtr gdImageScaleTwoPass(const gdImagePtr src, const unsigned int
src_widt
if (tmp_im == NULL) {
return NULL;
}
+ gdImageSetInterpolationMethod(tmp_im, src->interpolation_id);
_gdScaleHoriz(src, src_width, src_height, tmp_im, new_width, src_height);
dst = gdImageCreateTrueColor(new_width, new_height);
@@ -1072,6 +1073,7 @@ gdImagePtr gdImageScaleTwoPass(const gdImagePtr src, const unsigned int
src_widt
gdFree(tmp_im);
return NULL;
}
+ gdImageSetInterpolationMethod(dst, src->interpolation_id);
_gdScaleVert(tmp_im, new_width, src_height, dst, new_width, new_height);
gdFree(tmp_im);
@@ -1086,8 +1088,9 @@ gdImagePtr Scale(const gdImagePtr src, const unsigned int src_width, const
unsig
if (tmp_im == NULL) {
return NULL;
}
- _gdScaleHoriz(src, src_width, src_height, tmp_im, new_width, src_height);
+ gdImageSetInterpolationMethod(tmp_im, src->interpolation_id);
+ _gdScaleHoriz(src, src_width, src_height, tmp_im, new_width, src_height);
_gdScaleVert(tmp_im, new_width, src_height, dst, new_width, new_height);
gdFree(tmp_im);