diff options
author | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2005-12-21 20:01:16 +0000 |
---|---|---|
committer | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2005-12-21 20:01:16 +0000 |
commit | ece4087bb4c7bce1397d5cb2f3fe621868e2181b (patch) | |
tree | 6c853136b0453b302f13ab899161a2296c301782 /channels/chan_alsa.c | |
parent | 5b4e514a83e5ab448c746f7e4d0858ee6935228c (diff) |
Allow a chan_alsa that failed to open sound devices to be unloaded.
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@7582 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_alsa.c')
-rw-r--r-- | channels/chan_alsa.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/channels/chan_alsa.c b/channels/chan_alsa.c index 9bef8f3c7..6f0d36070 100644 --- a/channels/chan_alsa.c +++ b/channels/chan_alsa.c @@ -1109,8 +1109,10 @@ int unload_module() ast_channel_unregister(&alsa_tech); for (x=0;x<sizeof(myclis)/sizeof(struct ast_cli_entry); x++) ast_cli_unregister(myclis + x); - snd_pcm_close(alsa.icard); - snd_pcm_close(alsa.ocard); + if (alsa.icard) + snd_pcm_close(alsa.icard); + if (alsa.ocard) + snd_pcm_close(alsa.ocard); if (sndcmd[0] > 0) { close(sndcmd[0]); close(sndcmd[1]); |