diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/image.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/image.cc b/src/image.cc index 111568c..c540387 100644 --- a/src/image.cc +++ b/src/image.cc @@ -142,6 +142,14 @@ void load_exif(std::filesystem::path const& path, ImageImpl* img) { } } entry = exif_content_get_entry(data->ifd[EXIF_IFD_0], EXIF_TAG_DATE_TIME); + if (!entry) { + entry = exif_content_get_entry(data->ifd[EXIF_IFD_EXIF], + EXIF_TAG_DATE_TIME_ORIGINAL); + if (!entry) { + entry = exif_content_get_entry(data->ifd[EXIF_IFD_EXIF], + EXIF_TAG_DATE_TIME_DIGITIZED); + } + } if (entry && entry->format == EXIF_FORMAT_ASCII) { auto date = Date::from_format("%Y:%m:%d %H:%M:%S", reinterpret_cast<char const*>(entry->data)); |
