diff options
author | root <root@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-09-08 05:02:32 +0000 |
---|---|---|
committer | root <root@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-09-08 05:02:32 +0000 |
commit | 7502a6b9e61a6d8b258fc8b494ad86034a9e25de (patch) | |
tree | 80593f5222abc515c83b3e0444bc8b485bb9b7fc | |
parent | 0345676c7e2b9a8463e8d9b7ea692ed4ca7f2ec3 (diff) |
automerge commit
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2-netsec@42419 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r-- | channels/chan_local.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/channels/chan_local.c b/channels/chan_local.c index a28964167..84fd9d220 100644 --- a/channels/chan_local.c +++ b/channels/chan_local.c @@ -515,7 +515,7 @@ static struct local_pvt *local_alloc(char *data, int format) static struct ast_channel *local_new(struct local_pvt *p, int state) { struct ast_channel *tmp, *tmp2; - int randnum = rand() & 0xffff; + int randnum = rand() & 0xffff, fmt = 0; tmp = ast_channel_alloc(1); tmp2 = ast_channel_alloc(1); @@ -537,14 +537,15 @@ static struct ast_channel *local_new(struct local_pvt *p, int state) tmp2->type = type; ast_setstate(tmp, state); ast_setstate(tmp2, AST_STATE_RING); - tmp->writeformat = p->reqformat; - tmp2->writeformat = p->reqformat; - tmp->rawwriteformat = p->reqformat; - tmp2->rawwriteformat = p->reqformat; - tmp->readformat = p->reqformat; - tmp2->readformat = p->reqformat; - tmp->rawreadformat = p->reqformat; - tmp2->rawreadformat = p->reqformat; + fmt = ast_best_codec(p->reqformat); + tmp->writeformat = fmt; + tmp2->writeformat = fmt; + tmp->rawwriteformat = fmt; + tmp2->rawwriteformat = fmt; + tmp->readformat = fmt; + tmp2->readformat = fmt; + tmp->rawreadformat = fmt; + tmp2->rawreadformat = fmt; tmp->tech_pvt = p; tmp2->tech_pvt = p; p->owner = tmp; |