From d4df00ccbfa96056a3edc9c0333f61d1372e66a2 Mon Sep 17 00:00:00 2001 From: Daniele Gobbetti Date: Thu, 29 Aug 2024 16:52:50 +0200 Subject: [PATCH] Garmin: send blocks that are smaller than MaxPacketSize Fixes 4047 --- .../service/devices/garmin/FileTransferHandler.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/FileTransferHandler.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/FileTransferHandler.java index d60ebc547..bd420be1b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/FileTransferHandler.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/FileTransferHandler.java @@ -248,7 +248,7 @@ public CreateFileMessage initiateUpload(byte[] fileAsByteArray, FileType.FILETYP public static class FileFragment { private final DirectoryEntry directoryEntry; - private final int maxBlockSize = 500; + private final int maxBlockSize = 500; //TODO: why 500? private int dataSize; private ByteBuffer dataHolder; private int runningCrc; @@ -268,7 +268,7 @@ public CreateFileMessage initiateUpload(byte[] fileAsByteArray, FileType.FILETYP } private int getMaxBlockSize() { - return Math.max(maxBlockSize, GFDIMessage.getMaxPacketSize()); + return Math.min(maxBlockSize, GFDIMessage.getMaxPacketSize()); //TODO: can we use GFDIMessage.getMaxPacketSize() directly? } public String getFileName() {