summaryrefslogtreecommitdiff
path: root/ext/exif/exif.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/exif/exif.c')
-rw-r--r--ext/exif/exif.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ext/exif/exif.c b/ext/exif/exif.c
index 752e3da156..9dcc4da3fc 100644
--- a/ext/exif/exif.c
+++ b/ext/exif/exif.c
@@ -1540,6 +1540,10 @@ static void exif_iif_add_value(image_info_type *image_info, int section_index, c
image_info_data *info_data;
image_info_data *list;
+ if (length >= LONG_MAX) {
+ return;
+ }
+
list = erealloc(image_info->info_list[section_index].list, (image_info->info_list[section_index].count+1)*sizeof(image_info_data));
if (!list) {
EXIF_ERRLOG_EALLOC