diff --git a/hardware/serial-dmm/protocol.c b/hardware/serial-dmm/protocol.c index 6ca5e73e..fab6c4ae 100644 --- a/hardware/serial-dmm/protocol.c +++ b/hardware/serial-dmm/protocol.c @@ -80,7 +80,9 @@ static void handle_new_data(struct sr_dev_inst *sdi, int dmm, void *info) /* Try to get as much data as the buffer can hold. */ len = DMM_BUFSIZE - devc->buflen; len = serial_read(serial, devc->buf + devc->buflen, len); - if (len < 1) { + if (len == 0) + return; /* No new bytes, nothing to do. */ + if (len < 0) { sr_err("Serial port read error: %d.", len); return; }