diff --git a/src/modules/module-alsa-sink.c b/src/modules/module-alsa-sink.c index 708dd1f48..1a69954cf 100644 --- a/src/modules/module-alsa-sink.c +++ b/src/modules/module-alsa-sink.c @@ -337,8 +337,10 @@ static int unsuspend(struct userdata *u) { return 0; fail: - snd_pcm_close(u->pcm_handle); - u->pcm_handle = NULL; + if (u->pcm_handle) { + snd_pcm_close(u->pcm_handle); + u->pcm_handle = NULL; + } return -1; } diff --git a/src/modules/module-alsa-source.c b/src/modules/module-alsa-source.c index 61035c761..553d02839 100644 --- a/src/modules/module-alsa-source.c +++ b/src/modules/module-alsa-source.c @@ -325,8 +325,10 @@ static int unsuspend(struct userdata *u) { return 0; fail: - snd_pcm_close(u->pcm_handle); - u->pcm_handle = NULL; + if (u->pcm_handle) { + snd_pcm_close(u->pcm_handle); + u->pcm_handle = NULL; + } return -1; }