X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Ffluke-dmm%2Ffluke.c;h=078ada1d8c1b54b53b116fceb3e3ff9d4febc2fd;hb=49145a63c73e212e43f1ec901bfb4fe9f99e3caf;hp=f8544e99c29d83645c724515b3e765e9dcc2106f;hpb=886a52b6fbffb0fd06849c928cf9fd31a0d4657b;p=libsigrok.git diff --git a/hardware/fluke-dmm/fluke.c b/hardware/fluke-dmm/fluke.c index f8544e99..078ada1d 100644 --- a/hardware/fluke-dmm/fluke.c +++ b/hardware/fluke-dmm/fluke.c @@ -36,6 +36,7 @@ static struct sr_datafeed_analog *handle_qm_v1(const struct sr_dev_inst *sdi, gboolean is_oor; (void)sdi; + if (strcmp(tokens[0], "QM")) return NULL; @@ -158,6 +159,7 @@ static struct sr_datafeed_analog *handle_qm_v2(const struct sr_dev_inst *sdi, char *eptr; (void)sdi; + fvalue = strtof(tokens[0], &eptr); if (fvalue == 0.0 && eptr == tokens[0]) { sr_err("Invalid float."); @@ -307,11 +309,13 @@ static void handle_line(const struct sr_dev_inst *sdi) SR_PRIV int fluke_receive_data(int fd, int revents, void *cb_data) { - const struct sr_dev_inst *sdi; + struct sr_dev_inst *sdi; struct dev_context *devc; int len; int64_t now, elapsed; + (void)fd; + if (!(sdi = cb_data)) return TRUE; @@ -321,7 +325,7 @@ SR_PRIV int fluke_receive_data(int fd, int revents, void *cb_data) if (revents == G_IO_IN) { /* Serial data arrived. */ while(FLUKEDMM_BUFSIZE - devc->buflen - 1 > 0) { - len = serial_read(fd, devc->buf + devc->buflen, 1); + len = serial_read(devc->serial, devc->buf + devc->buflen, 1); if (len < 1) break; devc->buflen++; @@ -347,7 +351,7 @@ SR_PRIV int fluke_receive_data(int fd, int revents, void *cb_data) if ((devc->expect_response == FALSE && elapsed > devc->profile->poll_period) || elapsed > 1000) { sr_spew("Sending QM."); - if (serial_write(devc->serial->fd, "QM\r", 3) == -1) + if (serial_write(devc->serial, "QM\r", 3) == -1) sr_err("Unable to send QM: %s.", strerror(errno)); devc->cmd_sent_at = now; devc->expect_response = TRUE;