X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Ffluke-dmm%2Ffluke.c;h=33f7bb651e5c1e7668cd65fe4b11361efb75c00a;hb=64d33dc28e0e815cade56feb65f26a3d36421a96;hp=6719b41ce6afc06d679ab5ad3efb61f420d43e4e;hpb=31d84da3a22cc6fc9b2226ab3863e9235a3d5b87;p=libsigrok.git diff --git a/hardware/fluke-dmm/fluke.c b/hardware/fluke-dmm/fluke.c index 6719b41c..33f7bb65 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; @@ -54,8 +55,10 @@ static struct sr_datafeed_analog *handle_qm_v1(const struct sr_dev_inst *sdi, while(*e && *e == ' ') e++; + /* TODO: Check malloc return value. */ analog = g_try_malloc0(sizeof(struct sr_datafeed_analog)); analog->num_samples = 1; + /* TODO: Check malloc return value. */ analog->data = g_try_malloc(sizeof(float)); if (is_oor) *analog->data = NAN; @@ -156,14 +159,17 @@ 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."); return NULL; } + /* TODO: Check malloc return value. */ analog = g_try_malloc0(sizeof(struct sr_datafeed_analog)); analog->num_samples = 1; + /* TODO: Check malloc return value. */ analog->data = g_try_malloc(sizeof(float)); *analog->data = fvalue; analog->mq = -1; @@ -303,7 +309,7 @@ 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;