diff options
author | Andrew Browning <ayleph@thisshitistemp.com> | 2017-09-20 00:20:43 -0400 |
---|---|---|
committer | Andrew Browning <ayleph@thisshitistemp.com> | 2017-09-20 00:22:19 -0400 |
commit | 07c535c876b22609ae0fdd9753f27296793cb1d4 (patch) | |
tree | 426bfb79524a9bba77bc5f32f7c105c1080b4944 /mediagoblin | |
parent | 763eae89d9c13459a9e8ef1de384a7025d5820dd (diff) | |
download | mediagoblin-07c535c876b22609ae0fdd9753f27296793cb1d4.tar.lz mediagoblin-07c535c876b22609ae0fdd9753f27296793cb1d4.tar.xz mediagoblin-07c535c876b22609ae0fdd9753f27296793cb1d4.zip |
Fix #5524 Zero division error in exif.py
This patch implements the safe_gps_ratio_divide function for gps
direction and altitude values to prevent a zero divide error on
malformed GPS data.
Diffstat (limited to 'mediagoblin')
-rw-r--r-- | mediagoblin/tools/exif.py | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/mediagoblin/tools/exif.py b/mediagoblin/tools/exif.py index fafd987d..a428ddf1 100644 --- a/mediagoblin/tools/exif.py +++ b/mediagoblin/tools/exif.py @@ -175,18 +175,14 @@ def get_gps_data(tags): pass try: - gps_data['direction'] = ( - lambda d: - float(d.num) / float(d.den) - )(tags['GPS GPSImgDirection'].values[0]) + direction = tags['GPS GPSImgDirection'].values[0] + gps_data['direction'] = safe_gps_ratio_divide(direction) except KeyError: pass try: - gps_data['altitude'] = ( - lambda a: - float(a.num) / float(a.den) - )(tags['GPS GPSAltitude'].values[0]) + altitude = tags['GPS GPSAltitude'].values[0] + gps_data['altitude'] = safe_gps_ratio_divide(altitude) except KeyError: pass |