Merge branch 'PHP-5.6'
authorFerenc Kovacs <tyrael@php.net>
Wed, 15 Oct 2014 17:43:30 +0000 (19:43 +0200)
committerFerenc Kovacs <tyrael@php.net>
Wed, 15 Oct 2014 17:43:30 +0000 (19:43 +0200)
* PHP-5.6:
  NEWS
  Fixed Bug #65171 imagescale() fails
  Revert "Bug #41631: Observe socket read timeouts in SSL streams"

1  2 
ext/gd/gd.c

diff --cc ext/gd/gd.c
index 54d0254c01731f6eadbba4a316725b0a2e3b2783,7bf0b757a9273ce7a280866df817301a4bab95ba..5a820860e6e7a802d76075be803b1c71fc91cbad
@@@ -5046,11 -5118,23 +5046,23 @@@ PHP_FUNCTION(imagescale
                return;
        }
        method = tmp_m;
-       new_width = tmp_w;
-       new_height = tmp_h;
  
 -      ZEND_FETCH_RESOURCE(im, gdImagePtr, &IM, -1, "Image", le_gd);
 +      ZEND_FETCH_RESOURCE(im, gdImagePtr, IM, -1, "Image", le_gd);
  
+       if (tmp_h < 0) {
+               /* preserve ratio */
+               long src_x, src_y;
+               src_x = gdImageSX(im);
+               src_y = gdImageSY(im);
+               if (src_x) {
+                       tmp_h = tmp_w * src_y / src_x;
+               }
+       }
+       new_width = tmp_w;
+       new_height = tmp_h;
        if (gdImageSetInterpolationMethod(im, method)) {
                im_scaled = gdImageScale(im, new_width, new_height);
        }