[asterisk-commits] tilghman: branch 1.8 r284415 - in /branches/1.8: ./ channels/chan_sip.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Aug 31 15:22:16 CDT 2010


Author: tilghman
Date: Tue Aug 31 15:22:10 2010
New Revision: 284415

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

................
  r284399 | tilghman | 2010-08-31 15:18:32 -0500 (Tue, 31 Aug 2010) | 14 lines
  
  Merged revisions 284393 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r284393 | tilghman | 2010-08-31 15:13:21 -0500 (Tue, 31 Aug 2010) | 7 lines
    
    Don't send a devstate change on poke_noanswer if the state did not change.
    
    (closes issue #17741)
     Reported by: schmidts
     Patches: 
           chan_sip.c.patch uploaded by schmidts (license 1077)
  ........
................

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=284415&r1=284414&r2=284415
==============================================================================
--- branches/1.8/channels/chan_sip.c (original)
+++ branches/1.8/channels/chan_sip.c Tue Aug 31 15:22:10 2010
@@ -24584,7 +24584,7 @@
 static int sip_poke_noanswer(const void *data)
 {
 	struct sip_peer *peer = (struct sip_peer *)data;
-	
+
 	peer->pokeexpire = -1;
 
 	if (peer->lastms > -1) {
@@ -24603,9 +24603,12 @@
 		peer->call = dialog_unref(peer->call, "unref dialog peer->call");
 		/* peer->call = sip_destroy(peer->call);*/
 	}
-	
-	peer->lastms = -1;
-	ast_devstate_changed(AST_DEVICE_UNKNOWN, "SIP/%s", peer->name);
+
+	/* Don't send a devstate change if nothing changed. */
+	if (peer->lastms > -1) {
+		peer->lastms = -1;
+		ast_devstate_changed(AST_DEVICE_UNKNOWN, "SIP/%s", peer->name);
+	}
 
 	/* Try again quickly */
 	AST_SCHED_REPLACE_UNREF(peer->pokeexpire, sched,




More information about the asterisk-commits mailing list