iliaa Sun May 9 14:25:33 2004 EDT Modified files: /php-src/ext/gd/libgd gd.c Log: Fixed bug #28304 (Missing bounds check inside imagefilter()). http://cvs.php.net/diff.php/php-src/ext/gd/libgd/gd.c?r1=1.79&r2=1.80&ty=u Index: php-src/ext/gd/libgd/gd.c diff -u php-src/ext/gd/libgd/gd.c:1.79 php-src/ext/gd/libgd/gd.c:1.80 --- php-src/ext/gd/libgd/gd.c:1.79 Tue Apr 27 10:59:07 2004 +++ php-src/ext/gd/libgd/gd.c Sun May 9 14:25:33 2004 @@ -3607,8 +3607,9 @@ new_a = gdImageAlpha(srcback, pxl); for (j=0; j<3; j++) { + int yv = MIN(MAX(y - 1 + j, 0), src->sy - 1); for (i=0; i<3; i++) { - pxl = f(srcback, x-(3>>1)+i, y-(3>>1)+j); + pxl = f(srcback, MIN(MAX(x - 1 + i, 0), src->sx - 1), yv); new_r += (float)gdImageRed(srcback, pxl) * filter[j][i]; new_g += (float)gdImageGreen(srcback, pxl) * filter[j][i]; new_b += (float)gdImageBlue(srcback, pxl) * filter[j][i];
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php