diff --git a/channels/chan_local.c b/channels/chan_local.c
index d371a0f7594842e63e71d4ed2fc405170953277f..cc6ba8d684bc26a880295d985dd6ff9077407d92 100644
--- a/channels/chan_local.c
+++ b/channels/chan_local.c
@@ -505,6 +505,7 @@ static int local_call(struct ast_channel *ast, char *dest, int timeout)
 	p->chan->cid.cid_pres = p->owner->cid.cid_pres;
 	ast_string_field_set(p->chan, language, p->owner->language);
 	ast_string_field_set(p->chan, accountcode, p->owner->accountcode);
+	ast_cdr_update(p->chan);
 	p->chan->cdrflags = p->owner->cdrflags;
 
 	/* copy the channel variables from the incoming channel to the outgoing channel */