From edc714d87bb07373cd367f1a48734c339e7b3807 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Rebelo?= Date: Tue, 23 Jun 2026 13:18:54 +0100 Subject: [PATCH] Garmin: Fix exception if http request has no headers --- .../service/devices/garmin/http/GarminHttpRequest.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/http/GarminHttpRequest.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/http/GarminHttpRequest.java index 05dfda88c7..661186df2d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/http/GarminHttpRequest.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/http/GarminHttpRequest.java @@ -41,11 +41,13 @@ public class GarminHttpRequest { this.webRequest = webRequest; this.method = webRequest.getMethod().name(); this.uri = Uri.parse(webRequest.getUrl()); - final JsonElement garminHeaders = GarminJson.decode(webRequest.getHeaders().toByteArray()); this.headers = new LinkedHashMap<>(); - if (garminHeaders instanceof JsonObject jsonObject) { - for (String key : jsonObject.keySet()) { - headers.put(key, jsonObject.get(key).getAsString()); + if (!webRequest.getHeaders().isEmpty()) { + final JsonElement garminHeaders = GarminJson.decode(webRequest.getHeaders().toByteArray()); + if (garminHeaders instanceof JsonObject jsonObject) { + for (String key : jsonObject.keySet()) { + headers.put(key, jsonObject.get(key).getAsString()); + } } } }