From: Stanislav Malyshev Date: Mon, 4 Mar 2019 06:20:35 +0000 (-0800) Subject: Merge branch 'PHP-7.1' into PHP-7.2 X-Git-Tag: php-7.3.4RC1~45^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8363df370399e739733be5c5312fc5bb95ea5946;p=php Merge branch 'PHP-7.1' into PHP-7.2 * PHP-7.1: Update NEWS Fix test error message Fix bug #77563 - Uninitialized read in exif_process_IFD_in_MAKERNOTE Fix bug #77540 - Invalid Read on exif_process_SOFn Fix integer overflows on 32-bits Fix #77431 SplFileInfo::__construct() accepts NUL bytes Fix bug #77396 - Null Pointer Dereference in phar_create_or_parse_filename --- 8363df370399e739733be5c5312fc5bb95ea5946 diff --cc ext/exif/exif.c index 9c202196c6,fe89b85471..f5bc98a226 --- a/ext/exif/exif.c +++ b/ext/exif/exif.c @@@ -3204,9 -2792,9 +3204,10 @@@ static int exif_process_IFD_in_MAKERNOT offset_base = value_ptr + offset_diff; data_len = value_len - offset_diff; break; +#endif default: case MN_OFFSET_NORMAL: + data_len = value_len; break; } @@@ -4682,16 -4182,18 +4687,18 @@@ PHP_FUNCTION(exif_thumbnail ZVAL_STRINGL(return_value, ImageInfo.Thumbnail.data, ImageInfo.Thumbnail.size); if (arg_c >= 3) { if (!ImageInfo.Thumbnail.width || !ImageInfo.Thumbnail.height) { - exif_scan_thumbnail(&ImageInfo); + if (!exif_scan_thumbnail(&ImageInfo)) { + ImageInfo.Thumbnail.width = ImageInfo.Thumbnail.height = 0; + } } - zval_dtor(p_width); - zval_dtor(p_height); - ZVAL_LONG(p_width, ImageInfo.Thumbnail.width); - ZVAL_LONG(p_height, ImageInfo.Thumbnail.height); + zval_dtor(z_width); + zval_dtor(z_height); + ZVAL_LONG(z_width, ImageInfo.Thumbnail.width); + ZVAL_LONG(z_height, ImageInfo.Thumbnail.height); } if (arg_c >= 4) { - zval_dtor(p_imagetype); - ZVAL_LONG(p_imagetype, ImageInfo.Thumbnail.filetype); + zval_dtor(z_imagetype); + ZVAL_LONG(z_imagetype, ImageInfo.Thumbnail.filetype); } #ifdef EXIF_DEBUG