Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions opendm/photo.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,20 @@
import math

import exifread
import exifread.core.exif_header as _exif_hdr
import numpy as np

# Workaround for exifread 3.x IndexError on empty DJI MakerNote tag values.
# exifread's ExifHeader._get_printable_for_field does str(values[0]) without
# guarding for an empty values list. Monkeypatch until upstream fixes it.
# See: https://github.com/ianare/exif-py/issues/254
_orig_get_printable = _exif_hdr.ExifHeader._get_printable_for_field
def _safe_get_printable(self, *args, **kwargs):
try:
return _orig_get_printable(self, *args, **kwargs)
except IndexError:
return ""
_exif_hdr.ExifHeader._get_printable_for_field = _safe_get_printable
from six import string_types
from datetime import datetime, timedelta, timezone

Expand Down