From edc5964afa85000efafa96b9d4e29cb30e7b7d31 Mon Sep 17 00:00:00 2001 From: chrisdebian Date: Mon, 18 May 2026 16:15:54 +0100 Subject: [PATCH] fix: guard against None platform in get_exif sequence download When the Mapilio API returns a sequence whose osv.platform field is absent, api_data_details.get("osv", {}).get("platform") returns None. The subsequent `"iPhone" in platform` check raises: TypeError: argument of type 'NoneType' is not iterable Add a truthiness guard so the branch is skipped when platform is None. Fixes #84 Co-Authored-By: Claude Sonnet 4.6 --- MapSyncer/components/get_exif.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MapSyncer/components/get_exif.py b/MapSyncer/components/get_exif.py index 72e17d9..3ba3e1e 100644 --- a/MapSyncer/components/get_exif.py +++ b/MapSyncer/components/get_exif.py @@ -185,7 +185,7 @@ def get_exif(seq_id, sequence_path, lth_images): device_name = api_data_details.get("osv", {}).get("deviceName", "") platform = api_data_details.get("osv", {}).get("platform") - if platform == "iOS" or "iPhone" in platform: + if platform == "iOS" or (platform and "iPhone" in platform): device_make, device_model = "Apple", device_name.split(",")[0].replace("iPhone", "iPhone ") elif platform == "Android" and " " in device_name: