From f755e5c13bd8d761979393db7c40757f02c79163 Mon Sep 17 00:00:00 2001 From: kaliko Date: Thu, 12 Nov 2020 18:59:32 +0100 Subject: [PATCH] Fixed JSONDecodeError with wrong http cached file (closes #35) --- doc/Changelog | 1 + sima/lib/simafm.py | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/doc/Changelog b/doc/Changelog index 90267d1..6200f78 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -1,6 +1,7 @@ MPD_sima v0.16.0 * Update vinstall.py (closes #34) + * Fixed bug when http client fetches a corrupted cached entry (closes #35) -- kaliko UNRELEASED diff --git a/sima/lib/simafm.py b/sima/lib/simafm.py index 2d0ea38..18fe084 100644 --- a/sima/lib/simafm.py +++ b/sima/lib/simafm.py @@ -100,8 +100,13 @@ class SimaFM: payload = self._forge_payload(artist) # Construct URL ans = self.http(self.root_url, payload) + try: + ans.json() + except ValueError as err: + # Corrupted/malformed cache? cf. gitlab issue #35 + raise WSError('Malformed json, try purging the cache: %s') self._controls_answer(ans.json()) # pylint: disable=no-member - # Artist might be found be return no 'artist' list… + # Artist might be found but return no 'artist' list… # cf. "Mulatu Astatqe" vs. "Mulatu Astatqé" with autocorrect=0 # json format is broken IMHO, xml is more consistent IIRC # Here what we got: -- 2.39.2