From 031f7e6a47d3cc4a13b07b470c9a61b3cb777c6c Mon Sep 17 00:00:00 2001 From: Angel Lopez Date: Sun, 28 Jun 2026 09:45:14 -0700 Subject: [PATCH] HyundaiEurope: stop force-unwrapping Double(value) in getDoubleFromJson A non-numeric status field (empty, 'null', '--', unit-suffixed, or comma-decimal) makes Double(String) nil, so the ! traps and crashes the app while parsing a vehicle status (this helper feeds odometer, SOC, range, GPS). Match the Kia EU sibling (KiaEuropeAPIClient+Parsing.swift), which already uses Double(value) ?? 0; 0 is also this function's existing default fallback, so behavior stays consistent. --- .../API/HyundaiEurope/HyundaiEuropeAPIClient+Parsing.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sources/BetterBlueKit/API/HyundaiEurope/HyundaiEuropeAPIClient+Parsing.swift b/Sources/BetterBlueKit/API/HyundaiEurope/HyundaiEuropeAPIClient+Parsing.swift index eeba275..efae476 100644 --- a/Sources/BetterBlueKit/API/HyundaiEurope/HyundaiEuropeAPIClient+Parsing.swift +++ b/Sources/BetterBlueKit/API/HyundaiEurope/HyundaiEuropeAPIClient+Parsing.swift @@ -314,7 +314,7 @@ extension HyundaiEuropeAPIClient { switch getAnyFromJson(from: data, key: keyString!) { case let value as Double: return value case let value as Int: return Double(value) - case let value as String: return Double(value)! + case let value as String: return Double(value) ?? 0 default: return 0 } }