Merged revisions 142575 via svnmerge from
authorSteve Murphy <murf@digium.com>
Thu, 11 Sep 2008 23:12:53 +0000 (23:12 +0000)
committerSteve Murphy <murf@digium.com>
Thu, 11 Sep 2008 23:12:53 +0000 (23:12 +0000)
commitc4fc8fe4be14e736425922d7de60b03225cc32ce
tree002c3a222f056559d36a6eeda11f22a7f5603904
parent3a67cc8016c64060ce8c4e2d6fd3c6249c5a1113
Merged revisions 142575 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r142575 | murf | 2008-09-11 16:55:49 -0600 (Thu, 11 Sep 2008) | 20 lines

(closes issue #13364)
Reported by: mdu113

Well, fundamentally, the problems revealed in 13364 are
because of the ForkCDR call that is done before the dial.
When the bridge is in place, it's dealing with the first
(and wrong) cdr in the list.

So, I wrote a little func to zip down to the first non-locked
cdr in the chain, and thru-out the ast_bridge_call, these
results are used instead of raw chan->cdr and peer->cdr pointers.
This shouldn't affect anyone who isn't forking cdrs before a
dial, and should correct the cdr's of those that do.

So, this change ends up correcting the dstchannel
and userfield; the disposition was fixed by a previous
patch, it was OK coming into this problem.

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@142576 65c4cc65-6c06-0410-ace0-fbb531ad65f3
main/features.c