From 864783fed0ff1b3cb40cfd5d45939bb5106bbeaf Mon Sep 17 00:00:00 2001 From: Andreas Schildbach Date: Mon, 12 Jan 2015 20:32:14 +0100 Subject: [PATCH] EFA: Fix exception when JSON stopfinder doesn't find anything. --- enabler/src/de/schildbach/pte/AbstractEfaProvider.java | 4 +++- .../de/schildbach/pte/live/SydneyProviderLiveTest.java | 7 +++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/enabler/src/de/schildbach/pte/AbstractEfaProvider.java b/enabler/src/de/schildbach/pte/AbstractEfaProvider.java index bbe03253..81526ca9 100644 --- a/enabler/src/de/schildbach/pte/AbstractEfaProvider.java +++ b/enabler/src/de/schildbach/pte/AbstractEfaProvider.java @@ -277,7 +277,9 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider return new SuggestLocationsResult(header, locations); } - stops = stopFinder.getJSONArray("points"); + stops = stopFinder.optJSONArray("points"); + if (stops == null) + return new SuggestLocationsResult(header, locations); } final int nStops = stops.length(); diff --git a/enabler/test/de/schildbach/pte/live/SydneyProviderLiveTest.java b/enabler/test/de/schildbach/pte/live/SydneyProviderLiveTest.java index 749abccc..4f16f249 100644 --- a/enabler/test/de/schildbach/pte/live/SydneyProviderLiveTest.java +++ b/enabler/test/de/schildbach/pte/live/SydneyProviderLiveTest.java @@ -80,6 +80,13 @@ public class SydneyProviderLiveTest extends AbstractProviderLiveTest print(result); } + @Test + public void suggestLocationsEmpty() throws Exception + { + final SuggestLocationsResult result = provider.suggestLocations("kreide"); + print(result); + } + @Test public void shortTrip() throws Exception {