mirror of
https://github.com/php/php-src.git
synced 2024-09-22 02:17:32 +00:00
Fix segfaults in imagecreate/imagecreatetruecolor
This commit is contained in:
parent
e3f1641527
commit
c2e2423838
12
ext/gd/gd.c
12
ext/gd/gd.c
@ -800,6 +800,12 @@ PHP_FUNCTION(imagecreatetruecolor)
|
||||
convert_to_long_ex(x_size);
|
||||
convert_to_long_ex(y_size);
|
||||
|
||||
if (Z_LVAL_PP(x_size) <= 0
|
||||
|| Z_LVAL_PP(y_size) <= 0) {
|
||||
php_error(E_WARNING, "invalid image dimensions");
|
||||
RETURN_FALSE;
|
||||
}
|
||||
|
||||
im = gdImageCreateTrueColor(Z_LVAL_PP(x_size), Z_LVAL_PP(y_size));
|
||||
|
||||
ZEND_REGISTER_RESOURCE(return_value, im, le_gd);
|
||||
@ -1243,6 +1249,12 @@ PHP_FUNCTION(imagecreate)
|
||||
convert_to_long_ex(x_size);
|
||||
convert_to_long_ex(y_size);
|
||||
|
||||
if (Z_LVAL_PP(x_size) <= 0
|
||||
|| Z_LVAL_PP(y_size) <= 0) {
|
||||
php_error(E_WARNING, "invalid image dimensions");
|
||||
RETURN_FALSE;
|
||||
}
|
||||
|
||||
im = gdImageCreate(Z_LVAL_PP(x_size), Z_LVAL_PP(y_size));
|
||||
|
||||
ZEND_REGISTER_RESOURCE(return_value, im, le_gd);
|
||||
|
Loading…
Reference in New Issue
Block a user