aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorVadim Yanitskiy <axilirator@gmail.com>2017-09-02 21:34:03 +0700
committerHarald Welte <laforge@gnumonks.org>2017-09-02 17:03:06 +0200
commitd5cfaa6a52d09551661f2cc8ef7ffc24f809960a (patch)
tree42754e36c8c45f90aeefae1a600cde2250a38f14 /src
parent83aa99e7a9a1ff0d6949b4c71cd8817e2668b341 (diff)
pq_alsa.c: print error message if device init fails
Diffstat (limited to 'src')
-rw-r--r--src/pq_alsa.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/pq_alsa.c b/src/pq_alsa.c
index a3435dd..cad76ca 100644
--- a/src/pq_alsa.c
+++ b/src/pq_alsa.c
@@ -85,13 +85,16 @@ pq_queue_alsa_op(struct pq *pq, const char *alsa_dev, unsigned int blk_len, int
int rc = -1;
state = calloc(1, sizeof(struct pq_state_alsa));
- if (!state)
- return -ENOMEM;
+ if (!state) {
+ rc = -ENOMEM;
+ goto out_print;
+ }
rc = snd_pcm_open(&state->pcm_handle, alsa_dev,
in_out_n ? SND_PCM_STREAM_CAPTURE : SND_PCM_STREAM_PLAYBACK, 0);
if (rc < 0)
- return rc;
+ goto out_print;
+
state->blk_len = blk_len;
rc = snd_pcm_hw_params_malloc(&hw_params);
@@ -143,6 +146,9 @@ out_free_par:
out_close:
snd_pcm_close(state->pcm_handle);
free(state);
+out_print:
+ fprintf(stderr, "[!] Couldn't init ALSA device '%s': %s\n",
+ alsa_dev, snd_strerror(rc));
return rc;
}