]> sigrok.org Git - libsigrok.git/commitdiff
serial-dmm: Properly handle continuous mode
authorAlexandru Gagniuc <redacted>
Sat, 22 Dec 2012 22:00:44 +0000 (16:00 -0600)
committerUwe Hermann <redacted>
Sun, 23 Dec 2012 15:55:10 +0000 (16:55 +0100)
serial-dmm does not check if a sample limit is actually in place before deciding
to stop acquisition. Since the sample limit is set at 0 by default, operating
in continuous mode will cause acquisition to stop before even sending the first
sample.

Check to make sure we actually are in a sample-limited mode before stopping for
this reason.

Signed-off-by: Alexandru Gagniuc <redacted>
hardware/serial-dmm/protocol.c

index d10eec267ee4e2f2aaaecf6ac235acf775214a02..09f74dd4c56cfb6e750615fddfabf3b40ac9d7c3 100644 (file)
@@ -177,7 +177,7 @@ static int receive_data(int fd, int revents, int dmm, void *info, void *cb_data)
                }
        }
 
-       if (devc->num_samples >= devc->limit_samples) {
+       if (devc->limit_samples && devc->num_samples >= devc->limit_samples) {
                sr_info("Requested number of samples reached, stopping.");
                sdi->driver->dev_acquisition_stop(sdi, cb_data);
                return TRUE;