diff --git a/channels/chan_local.c b/channels/chan_local.c index cc48b303d371ed1b5b2e18de7175356b906ef4f8..5318796da1aa60dfc32fbdaf32a460f761b1de48 100644 --- a/channels/chan_local.c +++ b/channels/chan_local.c @@ -505,11 +505,15 @@ static int local_call(struct ast_channel *ast, char *dest, int timeout) * Note that cid_num and cid_name aren't passed in the ast_channel_alloc * call, so it's done here instead. */ + p->chan->cid.cid_dnid = ast_strdup(p->owner->cid.cid_dnid); p->chan->cid.cid_num = ast_strdup(p->owner->cid.cid_num); p->chan->cid.cid_name = ast_strdup(p->owner->cid.cid_name); p->chan->cid.cid_rdnis = ast_strdup(p->owner->cid.cid_rdnis); p->chan->cid.cid_ani = ast_strdup(p->owner->cid.cid_ani); p->chan->cid.cid_pres = p->owner->cid.cid_pres; + p->chan->cid.cid_ani2 = p->owner->cid.cid_ani2; + p->chan->cid.cid_ton = p->owner->cid.cid_ton; + p->chan->cid.cid_tns = p->owner->cid.cid_tns; 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);