summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Friesel <derf@finalrewind.org>2021-03-20 13:23:33 +0100
committerDaniel Friesel <derf@finalrewind.org>2021-03-20 13:23:33 +0100
commitbb89800fd5b970c5b12ecfe2ad2318874c97793f (patch)
tree376fc065ec94e38b22a44f6c1ab879207a15aa33
parentc0c77e9020b0a0700da55b170d03877031fd57f6 (diff)
HAFAS, Marudor: Handle empty responses
-rw-r--r--lib/DBInfoscreen/Helper/HAFAS.pm6
-rw-r--r--lib/DBInfoscreen/Helper/Marudor.pm7
2 files changed, 13 insertions, 0 deletions
diff --git a/lib/DBInfoscreen/Helper/HAFAS.pm b/lib/DBInfoscreen/Helper/HAFAS.pm
index b97248d..2b8172e 100644
--- a/lib/DBInfoscreen/Helper/HAFAS.pm
+++ b/lib/DBInfoscreen/Helper/HAFAS.pm
@@ -62,6 +62,12 @@ sub get_json_p {
my $json = decode_json($body);
+ if ( not $json ) {
+ $self->{log}->debug("hafas->get_json_p($url): empty response");
+ $promise->reject("GET $url returned empty response");
+ return;
+ }
+
$cache->freeze( $url, $json );
$promise->resolve($json);
diff --git a/lib/DBInfoscreen/Helper/Marudor.pm b/lib/DBInfoscreen/Helper/Marudor.pm
index 21083a7..dad9dc7 100644
--- a/lib/DBInfoscreen/Helper/Marudor.pm
+++ b/lib/DBInfoscreen/Helper/Marudor.pm
@@ -55,6 +55,13 @@ sub get_json_p {
my $res = $tx->res->json;
+ if ( not $res ) {
+ $self->{log}
+ ->debug("marudor->get_json_p($url): empty response");
+ $promise->reject("GET $url returned empty response");
+ return;
+ }
+
$cache->freeze( $url, $res );
$promise->resolve($res);