X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Ffluke-dmm%2Ffluke.c;h=3261390deb405d664ece57cfea210e73c0839990;hb=b02bb45f4cf6378520e5a5b82ff39013cfa270b6;hp=7a1fbf92022b0111115581eb5cc3a2f8f999e966;hpb=ba4dfbde11f48ce4bccda265f3db1e82901df99c;p=libsigrok.git diff --git a/src/hardware/fluke-dmm/fluke.c b/src/hardware/fluke-dmm/fluke.c index 7a1fbf92..3261390d 100644 --- a/src/hardware/fluke-dmm/fluke.c +++ b/src/hardware/fluke-dmm/fluke.c @@ -399,9 +399,9 @@ static void handle_qm_19x_data(const struct sr_dev_inst *sdi, char **tokens) analog.mqflags = 0; packet.type = SR_DF_ANALOG_OLD; packet.payload = &analog; - sr_session_send(devc->cb_data, &packet); - devc->num_samples++; + sr_session_send(sdi, &packet); + sr_sw_limits_update_samples_read(&devc->limits, 1); } static void handle_line(const struct sr_dev_inst *sdi) @@ -467,8 +467,8 @@ static void handle_line(const struct sr_dev_inst *sdi) /* Got a measurement. */ packet.type = SR_DF_ANALOG_OLD; packet.payload = analog; - sr_session_send(devc->cb_data, &packet); - devc->num_samples++; + sr_session_send(sdi, &packet); + sr_sw_limits_update_samples_read(&devc->limits, 1); g_free(analog->data); g_free(analog); } @@ -508,8 +508,8 @@ SR_PRIV int fluke_receive_data(int fd, int revents, void *cb_data) } } - if (devc->limit_samples && devc->num_samples >= devc->limit_samples) { - sdi->driver->dev_acquisition_stop(sdi, cb_data); + if (sr_sw_limits_check(&devc->limits)) { + sdi->driver->dev_acquisition_stop(sdi); return TRUE; }