mirror of
https://github.com/php/php-src.git
synced 2024-11-23 18:04:36 +08:00
MFH
This commit is contained in:
parent
fdbb8c2694
commit
8307bea9e6
@ -2860,11 +2860,9 @@ static int exif_process_IFD_TAG(image_info_type *ImageInfo, char *dir_entry, cha
|
||||
/* If its bigger than 4 bytes, the dir entry contains an offset. */
|
||||
value_ptr = offset_base+offset_val;
|
||||
if (offset_val+byte_count > IFDlength || value_ptr < dir_entry) {
|
||||
/*
|
||||
// It is important to check for IMAGE_FILETYPE_TIFF
|
||||
// JPEG does not use absolute pointers instead its pointers are relative to the start
|
||||
// of the TIFF header in APP1 section.
|
||||
*/
|
||||
/* It is important to check for IMAGE_FILETYPE_TIFF
|
||||
* JPEG does not use absolute pointers instead its pointers are
|
||||
* relative to the start of the TIFF header in APP1 section. */
|
||||
if (offset_val+byte_count>ImageInfo->FileSize || (ImageInfo->FileType!=IMAGE_FILETYPE_TIFF_II && ImageInfo->FileType!=IMAGE_FILETYPE_TIFF_MM && ImageInfo->FileType!=IMAGE_FILETYPE_JPEG)) {
|
||||
if (value_ptr < dir_entry) {
|
||||
/* we can read this if offset_val > 0 */
|
||||
@ -2882,13 +2880,11 @@ static int exif_process_IFD_TAG(image_info_type *ImageInfo, char *dir_entry, cha
|
||||
value_ptr = safe_emalloc(byte_count, 1, 0);
|
||||
outside = value_ptr;
|
||||
} else {
|
||||
/*
|
||||
// in most cases we only access a small range so
|
||||
// it is faster to use a static buffer there
|
||||
// BUT it offers also the possibility to have
|
||||
// pointers read without the need to free them
|
||||
// explicitley before returning.
|
||||
*/
|
||||
/* In most cases we only access a small range so
|
||||
* it is faster to use a static buffer there
|
||||
* BUT it offers also the possibility to have
|
||||
* pointers read without the need to free them
|
||||
* explicitley before returning. */
|
||||
memset(&cbuf, 0, sizeof(cbuf));
|
||||
value_ptr = cbuf;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user