Explorar o código

Avoid an iteration in flush function

The loop test ought to iterate again to end the loop but this is
only required if the socket contained more data than read.
Stéphane Raimbault %!s(int64=14) %!d(string=hai) anos
pai
achega
8057bbf45f
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      src/modbus-tcp.c

+ 1 - 1
src/modbus-tcp.c

@@ -354,7 +354,7 @@ int _modbus_tcp_flush(modbus_t *ctx)
         if (ctx->debug && rc != -1) {
             printf("\n%d bytes flushed\n", rc);
         }
-    } while (rc > 0);
+    } while (rc == MODBUS_TCP_MAX_ADU_LENGTH);
 
     return rc;
 }