From 69259a48e3d80cdd3d20d33ae70b32801bf9e7ab Mon Sep 17 00:00:00 2001 From: Tomas Bzatek Date: Wed, 5 Jun 2013 23:23:28 +0200 Subject: jpeg-utils: Shift/fake also Exif.Image.DateTime Turned out the Exif.Image.DateTime key may contain original timestamp in some cases, e.g. when using extracted EXIF data from original image. Since we can't trust this key has ever been modified by a photo software, let's modify it together with other keys. It comes with a cost of changing correct timestamp but we can't really distinguish that. --- src/jpeg-utils.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'src/jpeg-utils.cpp') diff --git a/src/jpeg-utils.cpp b/src/jpeg-utils.cpp index be95ec9..81dd47b 100644 --- a/src/jpeg-utils.cpp +++ b/src/jpeg-utils.cpp @@ -727,9 +727,7 @@ modify_exif (const gchar *filename, ExifData *exif, gboolean strip_thumbnail, gb if (! exifData.empty()) { res = shift_exif_time (exifData, "Exif.Photo.DateTimeOriginal", exif->timezone_shift); res = shift_exif_time (exifData, "Exif.Photo.DateTimeDigitized", exif->timezone_shift) || res; - if (! res) - /* usually a modification date, shift as a last option */ - shift_exif_time (exifData, "Exif.Image.DateTime", exif->timezone_shift); + res = shift_exif_time (exifData, "Exif.Image.DateTime", exif->timezone_shift) || res; modified = TRUE; } if (! iptcData.empty()) { @@ -744,8 +742,7 @@ modify_exif (const gchar *filename, ExifData *exif, gboolean strip_thumbnail, gb if (! exifData.empty()) { res = fake_exif_time (exifData, "Exif.Photo.DateTimeOriginal", exif->fake_datetime); res = fake_exif_time (exifData, "Exif.Photo.DateTimeDigitized", exif->fake_datetime) || res; - if (! res) - fake_exif_time (exifData, "Exif.Image.DateTime", exif->fake_datetime); + res = fake_exif_time (exifData, "Exif.Image.DateTime", exif->fake_datetime) || res; modified = TRUE; } if (! iptcData.empty()) { -- cgit v1.2.3