[asterisk-commits] twilson: branch 1.8 r319204 - in /branches/1.8: ./ channels/chan_sip.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon May 16 13:17:47 CDT 2011


Author: twilson
Date: Mon May 16 13:17:43 2011
New Revision: 319204

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=319204
Log:
Merged revisions 319202 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r319202 | twilson | 2011-05-16 11:00:21 -0700 (Mon, 16 May 2011) | 4 lines
  
  Unlink a peer from peers_by_ip when expiring a registration
  
  Review: https://reviewboard.asterisk.org/r/1218/
........

Modified:
    branches/1.8/   (props changed)
    branches/1.8/channels/chan_sip.c

Propchange: branches/1.8/
------------------------------------------------------------------------------
Binary property 'branch-1.6.2-merged' - no diff available.

Modified: branches/1.8/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.8/channels/chan_sip.c?view=diff&rev=319204&r1=319203&r2=319204
==============================================================================
--- branches/1.8/channels/chan_sip.c (original)
+++ branches/1.8/channels/chan_sip.c Mon May 16 13:17:43 2011
@@ -13135,6 +13135,11 @@
 	if (peer->selfdestruct ||
 	    ast_test_flag(&peer->flags[1], SIP_PAGE2_RTAUTOCLEAR)) {
 		unlink_peer_from_tables(peer);
+	} else if (!ast_sockaddr_isnull(&peer->addr)) {
+		/* If we aren't self-destructing a temp_peer, we still need to unlink the peer
+		 * from the peers_by_ip table, otherwise we end up with multiple copies hanging
+		 * around each time a registration expires and the peer re-registers. */
+		ao2_t_unlink(peers_by_ip, peer, "ao2_unlink of peer from peers_by_ip table");
 	}
 
 	/* Only clear the addr after we check for destruction.  The addr must remain




More information about the asterisk-commits mailing list