aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin
diff options
context:
space:
mode:
authorAndrew Browning <ayleph@thisshitistemp.com>2017-09-20 00:20:43 -0400
committerAndrew Browning <ayleph@thisshitistemp.com>2017-09-20 00:22:19 -0400
commit07c535c876b22609ae0fdd9753f27296793cb1d4 (patch)
tree426bfb79524a9bba77bc5f32f7c105c1080b4944 /mediagoblin
parent763eae89d9c13459a9e8ef1de384a7025d5820dd (diff)
downloadmediagoblin-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.py12
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