diff --git a/java_console/io/src/main/java/com/rusefi/binaryprotocol/IncomingDataBuffer.java b/java_console/io/src/main/java/com/rusefi/binaryprotocol/IncomingDataBuffer.java index 74efdc8c83..cd722680ff 100644 --- a/java_console/io/src/main/java/com/rusefi/binaryprotocol/IncomingDataBuffer.java +++ b/java_console/io/src/main/java/com/rusefi/binaryprotocol/IncomingDataBuffer.java @@ -106,6 +106,9 @@ public class IncomingDataBuffer { return waitForBytes(Timeouts.BINARY_IO_TIMEOUT, loggingMessage, startTimestamp, count); } + /** + * @return true in case of timeout, false if we have received count of bytes + */ public boolean waitForBytes(int timeoutMs, String loggingMessage, long startTimestamp, int count) { log.info(loggingMessage + ": waiting for " + count + " byte(s)"); synchronized (cbb) { @@ -118,7 +121,7 @@ public class IncomingDataBuffer { try { cbb.wait(timeout); } catch (InterruptedException e) { - throw new IllegalStateException(e); + return true; // thread thrown away, handling like a timeout } } }