From: Kevin P. Fleming Date: Sun, 1 May 2005 23:17:12 +0000 (+0000) Subject: ensure object reference is removed after unlinking from container X-Git-Tag: 1.2.0-beta1~773 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=dfd4f13f55e270cc6ba033c81060e2e8ff588407;p=thirdparty%2Fasterisk.git ensure object reference is removed after unlinking from container git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5545 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 809cc15cf4..84c6b0b44e 100755 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -4717,8 +4717,10 @@ static int expire_register(void *data) register_peer_exten(peer, 0); peer->expire = -1; ast_device_state_changed("SIP/%s", peer->name); - if (ast_test_flag(peer, SIP_SELFDESTRUCT) || ast_test_flag((&peer->flags_page2), SIP_PAGE2_RTAUTOCLEAR)) - ASTOBJ_CONTAINER_UNLINK(&peerl, peer); + if (ast_test_flag(peer, SIP_SELFDESTRUCT) || ast_test_flag((&peer->flags_page2), SIP_PAGE2_RTAUTOCLEAR)) { + peer = ASTOBJ_CONTAINER_UNLINK(&peerl, peer); + ASTOBJ_UNREF(peer, sip_destroy_peer); + } return 0; }