diff options
author | Jari Vetoniemi <mailroxas@gmail.com> | 2018-10-31 08:13:51 +0200 |
---|---|---|
committer | Jari Vetoniemi <mailroxas@gmail.com> | 2018-10-31 08:13:51 +0200 |
commit | d5407e5d9b536007d5ae2d5d25367226163ef758 (patch) | |
tree | d1347883207472cc0837e47ce406d0e1cc8ad981 /libasound.c | |
parent | 9269dd4f456f01b342438538dedfad715abcc3bc (diff) |
minor fixes
Diffstat (limited to 'libasound.c')
-rw-r--r-- | libasound.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libasound.c b/libasound.c index 26329f9..00bf1a6 100644 --- a/libasound.c +++ b/libasound.c @@ -202,19 +202,21 @@ device_open(snd_pcm_t *pcm, const char *name, snd_pcm_stream_t stream, int mode) int snd_pcm_open(snd_pcm_t **pcm, const char *name, snd_pcm_stream_t stream, int mode) { - assert(pcm); - if (!(*pcm = calloc(1, sizeof(**pcm)))) { WARN1("calloc"); return -1; } if (!((*pcm)->hdl = device_open(*pcm, name, stream, mode))) - return -1; + goto fail; sio_initpar(&(*pcm)->hw_requested.par); (*pcm)->name = (name ? name : "default"); return (sio_getcap((*pcm)->hdl, &(*pcm)->hw.cap) && sio_getpar((*pcm)->hdl, &(*pcm)->hw.par) ? 0 : -1); + +fail: + free(*pcm); + return -1; } int |