diff --git a/src/serial_posix.c b/src/serial_posix.c index 8a9fef1..d0eaea6 100644 --- a/src/serial_posix.c +++ b/src/serial_posix.c @@ -479,10 +479,10 @@ serial_read (serial* device, void* data, unsigned int size) } timersub (&now, ×tamp, &delta); long elapsed = delta.tv_sec * 1000 + delta.tv_usec / 1000; - if (elapsed >= device->timeout) + if (elapsed >= timeout) timeout = 0; else - timeout = device->timeout - elapsed; + timeout -= elapsed; timestamp = now; } }