[svn-commits] mmichelson: branch 1.4 r110618 - /branches/1.4/channels/chan_sip.c

SVN commits to the Digium repositories svn-commits at lists.digium.com
Mon Mar 24 14:17:42 CDT 2008


Author: mmichelson
Date: Mon Mar 24 14:17:41 2008
New Revision: 110618

URL: http://svn.digium.com/view/asterisk?view=rev&rev=110618
Log:
This is a revert for revision 108288. The reason is that that revision
was not for an actual bug fix per se, and so it really should not have been in 1.4 in
the first place. Plus, people who compile with DO_CRASH are more likely
to encounter a crash due to this change. While I think the usage of DO_CRASH
in ast_sched_del is a bit absurd, this sort of change is beyond the scope of 1.4
and should be done instead in a developer branch based on trunk 
so that all scheduler functions are fixed at once.

I also am reverting the change to trunk and 1.6 since they also suffer from
the DO_CRASH potential.

(closes issue #12272)
Reported by: qq12345


Modified:
    branches/1.4/channels/chan_sip.c

Modified: branches/1.4/channels/chan_sip.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/channels/chan_sip.c?view=diff&rev=110618&r1=110617&r2=110618
==============================================================================
--- branches/1.4/channels/chan_sip.c (original)
+++ branches/1.4/channels/chan_sip.c Mon Mar 24 14:17:41 2008
@@ -3038,7 +3038,7 @@
 			p->invitestate = INV_CALLING;
 
 			/* Initialize auto-congest time */
-			ast_sched_del(sched, p->initid);
+			AST_SCHED_DEL(sched, p->initid);
 			p->initid = ast_sched_add(sched, p->maxtime ? (p->maxtime * 4) : SIP_TRANS_TIMEOUT, auto_congest, p);
 		}
 	}
@@ -3111,7 +3111,7 @@
 
 	if (p->stateid > -1)
 		ast_extension_state_del(p->stateid, NULL);
-	ast_sched_del(sched, p->initid);
+	AST_SCHED_DEL(sched, p->initid);
 	AST_SCHED_DEL(sched, p->waitid);
 	AST_SCHED_DEL(sched, p->autokillid);
 
@@ -12070,7 +12070,7 @@
 
 	/* Acknowledge sequence number - This only happens on INVITE from SIP-call */
 	/* Don't auto congest anymore since we've gotten something useful back */
-	ast_sched_del(sched, p->initid);
+	AST_SCHED_DEL(sched, p->initid);
 
 	/* RFC3261 says we must treat every 1xx response (but not 100)
 	   that we don't recognize as if it was 183.
@@ -14656,9 +14656,6 @@
 
 	stop_media_flows(p); /* Immediately stop RTP, VRTP and UDPTL as applicable */
 
-	if (p->owner)
-		ast_queue_hangup(p->owner);
-	else
 		sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
 	if (p->initreq.len > 0) {
 		transmit_response_reliable(p, "487 Request Terminated", &p->initreq);




More information about the svn-commits mailing list