]> sigrok.org Git - libsigrok.git/blobdiff - hardware/link-mso19/api.c
Enforce open device before config_set()/dev_acquisition_start()
[libsigrok.git] / hardware / link-mso19 / api.c
index 58ff415a83d448512ad74050401355e0aa5bfb8d..cbf70986a198c71f41e4f97a224de90a18bc5871 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * This file is part of the sigrok project.
+ * This file is part of the libsigrok project.
  *
  * Copyright (C) 2011 Daniel Ribeiro <drwyrm@gmail.com>
  * Copyright (C) 2012 Renato Caldas <rmsc@fe.up.pt>
@@ -298,7 +298,7 @@ static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi)
                        return SR_ERR;
                break;
        default:
-               return SR_ERR_ARG;
+               return SR_ERR_NA;
        }
 
        return SR_OK;
@@ -315,7 +315,7 @@ static int config_set(int id, GVariant *data, const struct sr_dev_inst *sdi)
        devc = sdi->priv;
 
        if (sdi->status != SR_ST_ACTIVE)
-               return SR_ERR;
+               return SR_ERR_DEV_CLOSED;
 
        switch (id) {
        case SR_CONF_SAMPLERATE:
@@ -363,7 +363,7 @@ static int config_set(int id, GVariant *data, const struct sr_dev_inst *sdi)
                ret = SR_OK;
                break;
        default:
-               ret = SR_ERR;
+               ret = SR_ERR_NA;
                break;
        }
 
@@ -393,7 +393,7 @@ static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi)
                *data = g_variant_new_string(TRIGGER_TYPE);
                break;
        default:
-               return SR_ERR_ARG;
+               return SR_ERR_NA;
        }
 
        return SR_OK;
@@ -405,10 +405,10 @@ static int hw_dev_acquisition_start(const struct sr_dev_inst *sdi,
        struct dev_context *devc;
        int ret = SR_ERR;
 
-       devc = sdi->priv;
-
        if (sdi->status != SR_ST_ACTIVE)
-               return SR_ERR;
+               return SR_ERR_DEV_CLOSED;
+
+       devc = sdi->priv;
 
        if (mso_configure_probes(sdi) != SR_OK) {
                sr_err("Failed to configure probes.");