Fixed an out of memory handling issue.
authorDan Fandrich <dan@coneharvesters.com>
Sun, 10 Feb 2008 06:12:54 +0000 (22:12 -0800)
committerDan Fandrich <dan@coneharvesters.com>
Sun, 10 Feb 2008 06:12:54 +0000 (22:12 -0800)
libexif/exif-data.c

index eb007cb..1592542 100644 (file)
@@ -536,8 +536,11 @@ exif_data_save_data_content (ExifData *data, ExifContent *ifd,
        exif_log (data->priv->log, EXIF_LOG_CODE_DEBUG, "ExifData",
                  "Saving %i entries (IFD '%s', offset: %i)...",
                  ifd->count, exif_ifd_get_name (i), offset);
-       for (j = 0; j < ifd->count; j++)
+       for (j = 0; j < ifd->count; j++) {
                exif_data_save_data_entry (data, ifd->entries[j], d, ds, offset + 12 * j);
+               if (!*d)
+                       return; /* out of memory */
+       }
 
        offset += 12 * ifd->count;