summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel Friesel <derf@finalrewind.org>2014-12-05 18:48:36 +0100
committerDaniel Friesel <derf@finalrewind.org>2014-12-05 18:48:36 +0100
commit89256a02f51edc44b556f759998eadfd8cf01b17 (patch)
treec20d332f54c5265f8ef371b8a7586091f4092181 /src
parenta664ddeb70752c1c3cd74a361e4bf848611b05d8 (diff)
exif.c: do sort-of-bounds-check before accessing the exif array (closes #179)
Diffstat (limited to 'src')
-rw-r--r--src/exif.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/exif.c b/src/exif.c
index a30b2ef..9ad9dae 100644
--- a/src/exif.c
+++ b/src/exif.c
@@ -259,7 +259,7 @@ void exif_get_info(ExifData * ed, char *buffer, unsigned int maxsize)
else
{
/* show normal exif tags. list must be defined in exif_cfg.h */
- while ( (Exif_tag_list[i].ifd != EXIF_IFD_COUNT) && (i < USHRT_MAX) )
+ while ( (i < USHRT_MAX) && (Exif_tag_list[i].ifd != EXIF_IFD_COUNT) )
{
exif_get_tag(ed, Exif_tag_list[i].ifd, Exif_tag_list[i].tag, buffer + strlen(buffer), maxsize - strlen(buffer));
i++;
@@ -281,7 +281,7 @@ void exif_get_info(ExifData * ed, char *buffer, unsigned int maxsize)
{
/* show nikon makernote exif tags. list must be defined in exif_cfg.h */
i=0;
- while ( (Exif_makernote_nikon_tag_list[i] != EXIF_NIKON_MAKERNOTE_END) && (i < USHRT_MAX) )
+ while ( (i < USHRT_MAX) && (Exif_makernote_nikon_tag_list[i] != EXIF_NIKON_MAKERNOTE_END) )
{
exn_get_mnote_nikon_tags(ed, Exif_makernote_nikon_tag_list[i],
buffer + strlen(buffer), maxsize - strlen(buffer));
@@ -293,7 +293,7 @@ void exif_get_info(ExifData * ed, char *buffer, unsigned int maxsize)
{
/* show canon makernote exif tags. list must be defined in exif_cfg.h */
i=0;
- while ( (Exif_makernote_canon_tag_list[i] != EXIF_CANON_MAKERNOTE_END) && (i < USHRT_MAX) )
+ while ( (i < USHRT_MAX) && (Exif_makernote_canon_tag_list[i] != EXIF_CANON_MAKERNOTE_END) )
{
exc_get_mnote_canon_tags(ed, Exif_makernote_canon_tag_list[i],
buffer + strlen(buffer), maxsize - strlen(buffer));