summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2014-04-18 16:44:48 +0000
committerRichard Mudgett <rmudgett@digium.com>2014-04-18 16:44:48 +0000
commit51b6c49681c17d260aebc67e618f996b9a7f1176 (patch)
treeec16e0af53fbf5ae405439c8ff08d8404f756a39 /apps
parentcbe7f656749f5cf7e4d8321ef74a99c9281a2284 (diff)
Originated calls: Fix several originate call problems.
* Restore the reason value set by pbx_outgoing_attempt() to use AST_CONTROL_xxx values as all the consumers were expecting rather than cause codes. * Fixed the dial routines to set cause codes for more than just ast_request() so pbx_outgoing_attempt() reason codes will function. * Fix inconsistent locked_channel return status in pbx_outgoing_attempt(). The chanel may not have been locked or the channel may have been a stale pointer. * Fixed the OutgoingSpoolFailed channel to run dialplan whenever the dialing fails for an originate exten and 1 < synchronous. * Fix incorrect ast_cond_wait() usage in pbx_outgoing_attempt(). Indroduced by issue ASTERISK-22212 patch. * Made struct pbx_outgoing use the ao2 lock instead of its own lock for the cond wait mutex. No sense in having two locks associated with the same struct when only one is needed. Review: https://reviewboard.asterisk.org/r/3421/ ........ Merged revisions 412581 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@412583 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps')
-rw-r--r--apps/app_originate.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/apps/app_originate.c b/apps/app_originate.c
index b196194e4..9fceb0849 100644
--- a/apps/app_originate.c
+++ b/apps/app_originate.c
@@ -177,14 +177,14 @@ static int originate_exec(struct ast_channel *chan, const char *data)
chantech, chandata, args.arg1, exten, priority);
ast_pbx_outgoing_exten(chantech, cap_slin, chandata,
- timeout * 1000, args.arg1, exten, priority, &outgoing_status, 0, NULL,
+ timeout * 1000, args.arg1, exten, priority, &outgoing_status, 1, NULL,
NULL, NULL, NULL, NULL, 0, NULL);
} else if (!strcasecmp(args.type, "app")) {
ast_debug(1, "Originating call to '%s/%s' and connecting them to %s(%s)\n",
chantech, chandata, args.arg1, S_OR(args.arg2, ""));
ast_pbx_outgoing_app(chantech, cap_slin, chandata,
- timeout * 1000, args.arg1, args.arg2, &outgoing_status, 0, NULL,
+ timeout * 1000, args.arg1, args.arg2, &outgoing_status, 1, NULL,
NULL, NULL, NULL, NULL, NULL);
} else {
ast_log(LOG_ERROR, "Incorrect type, it should be 'exten' or 'app': %s\n",