diff options
author | automerge <automerge@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-05-18 21:14:50 +0000 |
---|---|---|
committer | automerge <automerge@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-05-18 21:14:50 +0000 |
commit | f063371a160d55eb7023dd417bebca99515728c9 (patch) | |
tree | c7566dd768f9debae49f909bd95ec4bf539b1d90 /apps/app_dial.c | |
parent | ba6356fbc0383d5104e9414f525bad297e7d5075 (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/app_dial.c')
-rw-r--r-- | apps/app_dial.c | 7 |
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; |