From: Uwe Hermann Date: Sun, 22 Apr 2018 16:36:12 +0000 (+0200) Subject: rigol-ds: Fix an issue causing only one channel to be acquired. X-Git-Url: https://sigrok.org/gitweb/?p=libsigrok.git;a=commitdiff_plain;h=ce97fc3f6a15b71575b9ef46d161b829d48d2e0a;ds=sidebyside rigol-ds: Fix an issue causing only one channel to be acquired. This fixes bug #1018. --- diff --git a/src/hardware/rigol-ds/protocol.c b/src/hardware/rigol-ds/protocol.c index 453ab658..1344c8b4 100644 --- a/src/hardware/rigol-ds/protocol.c +++ b/src/hardware/rigol-ds/protocol.c @@ -723,7 +723,8 @@ SR_PRIV int rigol_ds_receive(int fd, int revents, void *cb_data) if (devc->data_source != DATA_SOURCE_LIVE) rigol_ds_set_wait_event(devc, WAIT_BLOCK); } - if (!sr_scpi_read_complete(scpi)) { + /* End acquisition when data for all channels is acquired. */ + if (!sr_scpi_read_complete(scpi) && !devc->channel_entry->next) { sr_err("Read should have been completed"); packet.type = SR_DF_FRAME_END; sr_session_send(sdi, &packet);