aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorautomerge <automerge@f38db490-d61c-443f-a65b-d21fe96a405b>2007-05-18 21:14:50 +0000
committerautomerge <automerge@f38db490-d61c-443f-a65b-d21fe96a405b>2007-05-18 21:14:50 +0000
commitf063371a160d55eb7023dd417bebca99515728c9 (patch)
treec7566dd768f9debae49f909bd95ec4bf539b1d90 /apps
parentba6356fbc0383d5104e9414f525bad297e7d5075 (diff)
automerge commit
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2-netsec@65199 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps')
-rw-r--r--apps/app_dial.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/apps/app_dial.c b/apps/app_dial.c
index b04b33435..074226e0d 100644
--- a/apps/app_dial.c
+++ b/apps/app_dial.c
@@ -678,6 +678,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
if (!f || ((f->frametype == AST_FRAME_CONTROL) && (f->subclass == AST_CONTROL_HANGUP))) {
/* Got hung up */
*to=-1;
+ ast_cdr_noanswer(in->cdr);
strcpy(status, "CANCEL");
if (f)
ast_frfree(f);
@@ -691,6 +692,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
if (option_verbose > 3)
ast_verbose(VERBOSE_PREFIX_3 "User hit %c to disconnect call.\n", f->subclass);
*to=0;
+ ast_cdr_noanswer(in->cdr);
*result = f->subclass;
strcpy(status, "CANCEL");
ast_frfree(f);
@@ -703,6 +705,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
if (option_verbose > 3)
ast_verbose(VERBOSE_PREFIX_3 "User hit %c to disconnect call.\n", f->subclass);
*to=0;
+ ast_cdr_noanswer(in->cdr);
strcpy(status, "CANCEL");
ast_frfree(f);
return NULL;
@@ -727,6 +730,10 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
}
if (!*to && (option_verbose > 2))
ast_verbose( VERBOSE_PREFIX_3 "Nobody picked up in %d ms\n", orig);
+ if (!*to || ast_check_hangup(in)) {
+ ast_cdr_noanswer(in->cdr);
+ }
+
}
return peer;