aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_alsa.c
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-10-26 22:25:43 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-10-26 22:25:43 +0000
commite2c75a92f97e22fed0bd2017fccb550fc2106ba3 (patch)
tree8cc9a36b9066a72d36a623a08bb8779286caedf2 /channels/chan_alsa.c
parentb561eb0a2d237ca6c387b60011d55fc38bec1c2c (diff)
Pass concept of status back, permit "leaveempty" to work with static agents who are not loggedon (bug #2719)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4106 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_alsa.c')
-rwxr-xr-xchannels/chan_alsa.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/channels/chan_alsa.c b/channels/chan_alsa.c
index 09074ec87..e00eecd44 100755
--- a/channels/chan_alsa.c
+++ b/channels/chan_alsa.c
@@ -19,6 +19,7 @@
#include <asterisk/config.h>
#include <asterisk/cli.h>
#include <asterisk/utils.h>
+#include <asterisk/causes.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
@@ -753,7 +754,7 @@ static struct ast_channel *alsa_new(struct chan_alsa_pvt *p, int state)
return tmp;
}
-static struct ast_channel *alsa_request(const char *type, int format, void *data)
+static struct ast_channel *alsa_request(const char *type, int format, void *data, int *cause)
{
int oldformat = format;
struct ast_channel *tmp=NULL;
@@ -765,6 +766,7 @@ static struct ast_channel *alsa_request(const char *type, int format, void *data
ast_mutex_lock(&alsalock);
if (alsa.owner) {
ast_log(LOG_NOTICE, "Already have a call on the ALSA channel\n");
+ *cause = AST_CAUSE_BUSY;
} else {
tmp= alsa_new(&alsa, AST_STATE_DOWN);
if (!tmp) {