From 089077fdb7c59e88a4558a342a622db011a562c5 Mon Sep 17 00:00:00 2001 From: Sara Damiano Date: Tue, 18 Feb 2020 18:48:35 -0500 Subject: [PATCH] Bad do/while fix Signed-off-by: Sara Damiano --- src/TinyGsmTCP.tpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/TinyGsmTCP.tpp b/src/TinyGsmTCP.tpp index 4dfa659..236d6f9 100644 --- a/src/TinyGsmTCP.tpp +++ b/src/TinyGsmTCP.tpp @@ -270,12 +270,13 @@ class TinyGsmTCP { inline void dumpModemBuffer(uint32_t maxWaitMs) { #if defined TINY_GSM_BUFFER_READ_AND_CHECK_SIZE || \ defined TINY_GSM_BUFFER_READ_NO_CHECK - TINY_GSM_YIELD(); + TINY_GSM_YIELD(); uint32_t startMillis = millis(); - do { + while (sock_available > 0 && (millis() - startMillis < maxWaitMs)) { rx.clear(); + DBG(TinyGsmMin((uint16_t)rx.free(), sock_available)); at->modemRead(TinyGsmMin((uint16_t)rx.free(), sock_available), mux); - } while (sock_available > 0 && (millis() - startMillis < maxWaitMs)); + } #elif defined TINY_GSM_NO_MODEM_BUFFER // Do nothing