summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTomas Bzatek <tbzatek@users.sourceforge.net>2013-06-05 23:23:28 +0200
committerTomas Bzatek <tbzatek@users.sourceforge.net>2013-06-05 23:23:28 +0200
commit69259a48e3d80cdd3d20d33ae70b32801bf9e7ab (patch)
tree9114f58005d2fac9f8efa333b16cdb761602ac87 /src
parent3a6563d039e38a171ce5a5c09ecfe7981797e2c4 (diff)
downloadcataract-69259a48e3d80cdd3d20d33ae70b32801bf9e7ab.tar.xz
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.
Diffstat (limited to 'src')
-rw-r--r--src/jpeg-utils.cpp7
1 files changed, 2 insertions, 5 deletions
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()) {