aboutsummaryrefslogtreecommitdiffstats
path: root/cdr.c
diff options
context:
space:
mode:
authormurf <murf@f38db490-d61c-443f-a65b-d21fe96a405b>2007-05-02 20:10:32 +0000
committermurf <murf@f38db490-d61c-443f-a65b-d21fe96a405b>2007-05-02 20:10:32 +0000
commit2faf048c3dc1ec4fefe65cb9046402f8c546e884 (patch)
treeebe00e774d872d3f311435c578e71b6ebb82afcf /cdr.c
parent873d9efc182d675535045af1111ee4e7d10f18a8 (diff)
Some tweaks to satisfy CDR bug 8796, where being in 'h' extension louses up the dst field
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@62737 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'cdr.c')
-rw-r--r--cdr.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/cdr.c b/cdr.c
index 6838d619c..8f9c4da0a 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"))