From 0c058ebda031d1fa427bbf78f76c8fc04b45917b Mon Sep 17 00:00:00 2001 From: Andreas Schildbach Date: Sun, 17 Oct 2021 22:20:53 +0200 Subject: [PATCH] AbstractHafasClientInterfaceProvider: handle case of empty currency code when parsing fares --- .../schildbach/pte/AbstractHafasClientInterfaceProvider.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/de/schildbach/pte/AbstractHafasClientInterfaceProvider.java b/src/de/schildbach/pte/AbstractHafasClientInterfaceProvider.java index 4ba5b0d4..fee56b25 100644 --- a/src/de/schildbach/pte/AbstractHafasClientInterfaceProvider.java +++ b/src/de/schildbach/pte/AbstractHafasClientInterfaceProvider.java @@ -774,7 +774,7 @@ public abstract class AbstractHafasClientInterfaceProvider extends AbstractHafas final JSONObject jsonTicket = jsonFare.getJSONArray("ticketL").getJSONObject(ticketX); final String ticketName = jsonTicket.getString("name"); final String currencyStr = jsonTicket.getString("cur"); - if (currencyStr != null) { + if (!Strings.isNullOrEmpty(currencyStr)) { final Currency currency = Currency.getInstance(currencyStr); final float price = jsonTicket.getInt("prc") / 100f; fare = new Fare(normalizeFareName(fareName) + '\n' + ticketName, @@ -784,7 +784,7 @@ public abstract class AbstractHafasClientInterfaceProvider extends AbstractHafas } } else if (type.equals("F")) { // fare final String currencyStr = jsonFare.optString("cur"); - if (currencyStr != null) { + if (!Strings.isNullOrEmpty(currencyStr)) { final Currency currency = ParserUtils.getCurrency(currencyStr); final float price = jsonFare.getInt("prc") / 100f; fare = new Fare(normalizeFareName(fareName), normalizeFareType(fareName), currency,