From 6d9fe8c8a579dff3f4d53b04aeca46cff46d6180 Mon Sep 17 00:00:00 2001 From: Automerge Script Date: Wed, 2 May 2007 21:18:33 +0000 Subject: [PATCH] automerge commit git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2-netsec@62782 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- cdr.c | 10 ++++++---- pbx.c | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/cdr.c b/cdr.c index 6838d619c9..8f9c4da0af 100644 --- a/cdr.c +++ b/cdr.c @@ -775,16 +775,18 @@ int ast_cdr_update(struct ast_channel *c) /* Copy account code et-al */ ast_copy_string(cdr->accountcode, c->accountcode, sizeof(cdr->accountcode)); - /* Destination information */ - ast_copy_string(cdr->dst, (ast_strlen_zero(c->macroexten)) ? c->exten : c->macroexten, sizeof(cdr->dst)); - ast_copy_string(cdr->dcontext, (ast_strlen_zero(c->macrocontext)) ? c->context : c->macrocontext, sizeof(cdr->dcontext)); + if (!ast_check_hangup(c)) { + /* Destination information */ /* XXX privilege macro* ? */ + ast_copy_string(cdr->dst, (ast_strlen_zero(c->macroexten)) ? c->exten : c->macroexten, sizeof(cdr->dst)); + ast_copy_string(cdr->dcontext, (ast_strlen_zero(c->macrocontext)) ? c->context : c->macrocontext, sizeof(cdr->dcontext)); + } } cdr = cdr->next; } return 0; } - + int ast_cdr_amaflags2int(const char *flag) { if (!strcasecmp(flag, "default")) diff --git a/pbx.c b/pbx.c index 6b068214ce..2b2edc2110 100644 --- a/pbx.c +++ b/pbx.c @@ -562,7 +562,7 @@ int pbx_exec(struct ast_channel *c, /*!< Channel */ int (*execute)(struct ast_channel *chan, void *data) = app->execute; if (newstack) { - if (c->cdr) + if (c->cdr && !ast_check_hangup(c)) ast_cdr_setapp(c->cdr, app->name, data); /* save channel values */