Fix a crash by checking the proper pointer for validity before deferencing it.
authorMatthew Nicholson <mnicholson@digium.com>
Thu, 20 Aug 2009 20:29:32 +0000 (20:29 +0000)
committerMatthew Nicholson <mnicholson@digium.com>
Thu, 20 Aug 2009 20:29:32 +0000 (20:29 +0000)
(closes issue #15751)
Reported by: atis
Patches:
      ast_bridge_call_peer_cdr.patch uploaded by atis (license 242)

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

main/features.c

index 9f14551..f8ab004 100644 (file)
@@ -2769,7 +2769,7 @@ int ast_bridge_call(struct ast_channel *chan,struct ast_channel *peer,struct ast
                   is before the bridge's start time, so I added in the 
                   tvcmp check to the if below */
 
-               if (peer_cdr && !ast_tvzero(peer_cdr->answer) && ast_tvcmp(peer->cdr->answer, bridge_cdr->start) >= 0) {
+               if (peer_cdr && !ast_tvzero(peer_cdr->answer) && ast_tvcmp(peer_cdr->answer, bridge_cdr->start) >= 0) {
                        bridge_cdr->answer = peer_cdr->answer;
                        bridge_cdr->disposition = peer_cdr->disposition;
                        if (chan_cdr) {