diff --git a/Host/Source/MicroBoot/interfaces/uart/XcpTransport.pas b/Host/Source/MicroBoot/interfaces/uart/XcpTransport.pas index 90db84dc..a65d78fe 100644 --- a/Host/Source/MicroBoot/interfaces/uart/XcpTransport.pas +++ b/Host/Source/MicroBoot/interfaces/uart/XcpTransport.pas @@ -250,7 +250,10 @@ begin // re-confgure the reception timeout now that the total packet length is known. // timeout = (MULTIPLIER) * number_of_bytes + CONSTANT sciDriver.Timeouts.ReadTotalConstant := 0; - sciDriver.Timeouts.ReadTotalMultiplier := timeOutms div resLen; + if timeOutms > 0 then + sciDriver.Timeouts.ReadTotalMultiplier := timeOutms div resLen + else + sciDriver.Timeouts.ReadTotalMultiplier := timeOutms; // attempt to receive the bytes of the response packet one by one while (rxCnt < resLen) and (GetTickCount < dwEnd) do diff --git a/Host/openblt_uart.dll b/Host/openblt_uart.dll index c9b72aab..5624b4d6 100644 Binary files a/Host/openblt_uart.dll and b/Host/openblt_uart.dll differ