]> sigrok.org Git - libsigrok.git/blobdiff - hardware/alsa/api.c
serial.c: Drop unneeded <glob.h>.
[libsigrok.git] / hardware / alsa / api.c
index aeac8713541c17e4f369cabe9bbf5142e57e9238..9bb2ce251ff29e3ce2116aa9c5f1983317b52710 100644 (file)
@@ -43,17 +43,20 @@ static void clear_helper(void *priv)
        devc = priv;
 
        snd_pcm_hw_params_free(devc->hw_params);
+       devc->hw_params = NULL;
+
        g_free((void *)devc->samplerates);
+       devc->samplerates = NULL;
 }
 
-static int clear_instances(void)
+static int dev_clear(void)
 {
        return std_dev_clear(di, clear_helper);
 }
 
 static int init(struct sr_context *sr_ctx)
 {
-       return std_hw_init(sr_ctx, di, LOG_PREFIX);
+       return std_init(sr_ctx, di, LOG_PREFIX);
 }
 
 static GSList *scan(GSList *options)
@@ -108,12 +111,11 @@ static int dev_close(struct sr_dev_inst *sdi)
 
        if (devc->capture_handle) {
                sr_dbg("Closing PCM device.");
-               if ((ret = snd_pcm_close(devc->capture_handle)) < 0) {
+               if ((ret = snd_pcm_close(devc->capture_handle)) < 0)
                        sr_err("Failed to close device: %s.",
                               snd_strerror(ret));
-                       devc->capture_handle = NULL;
-            sdi->status = SR_ST_INACTIVE;
-               }
+               devc->capture_handle = NULL;
+               sdi->status = SR_ST_INACTIVE;
        } else {
                sr_dbg("No capture handle, no need to close audio device.");
        }
@@ -123,7 +125,7 @@ static int dev_close(struct sr_dev_inst *sdi)
 
 static int cleanup(void)
 {
-       return clear_instances();
+       return dev_clear();
 }
 
 static int config_get(int id, GVariant **data, const struct sr_dev_inst *sdi)
@@ -325,7 +327,7 @@ SR_PRIV struct sr_dev_driver alsa_driver_info = {
        .cleanup = cleanup,
        .scan = scan,
        .dev_list = dev_list,
-       .dev_clear = clear_instances,
+       .dev_clear = dev_clear,
        .config_get = config_get,
        .config_set = config_set,
        .config_list = config_list,