[asterisk-commits] mattf: branch mattf/1.6.0-chan_ccs r269306 - /team/mattf/1.6.0-chan_ccs/chann...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Jun 9 11:44:00 CDT 2010


Author: mattf
Date: Wed Jun  9 11:43:57 2010
New Revision: 269306

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=269306
Log:
Dump call when bearer alllocation fails.

Modified:
    team/mattf/1.6.0-chan_ccs/channels/chan_ccs.c

Modified: team/mattf/1.6.0-chan_ccs/channels/chan_ccs.c
URL: http://svnview.digium.com/svn/asterisk/team/mattf/1.6.0-chan_ccs/channels/chan_ccs.c?view=diff&rev=269306&r1=269305&r2=269306
==============================================================================
--- team/mattf/1.6.0-chan_ccs/channels/chan_ccs.c (original)
+++ team/mattf/1.6.0-chan_ccs/channels/chan_ccs.c Wed Jun  9 11:43:57 2010
@@ -746,6 +746,7 @@
 
 	if (!c->bearer) {
 		ast_log(LOG_ERROR, "Unable to request bearer %s/%s\n", c->bearer_tech_str, c->bearer_dial_str);
+		ast_softhangup(ast, AST_SOFTHANGUP_DEV);
 		return -1;
 	}
 
@@ -1064,11 +1065,6 @@
 		ast_log(LOG_WARNING, "Unable to set law on channel %d\n", p->channel);
 	
 #endif
-	if (!(linkset->flags & LINKSET_FLAG_EXPLICITACM)) {
-		p->proceeding = 1;
-		isup_acm(ss7, p->sig.ss7.call);
-	}
-
 	c = ccs_ss7_new(p, NULL, AST_STATE_RING, p->exten);
 
 	if (!c) {
@@ -1082,6 +1078,11 @@
 
 	ccs_enable_ec(p);
 
+	if (!(linkset->flags & LINKSET_FLAG_EXPLICITACM)) {
+		p->proceeding = 1;
+		isup_acm(ss7, p->sig.ss7.call);
+	}
+
 	/* We only reference these variables in the context of the ss7_linkset function
 	 * when receiving either and IAM or a COT message.  Since they are only accessed
 	 * from this context, we should be safe to unlock around them */
@@ -1158,6 +1159,7 @@
 
 	if (ast_pbx_start(c)) {
 		ast_log(LOG_ERROR, "Unable to start PBX\n");
+		ccs_hangup(c);
 	}
 
 }
@@ -1413,13 +1415,9 @@
 				}
 				p = linkset->pvts[chanpos];
 
-				ast_mutex_lock(&p->lock);
-
 				ccs_loopback(p, 0);
 
 				ss7_start_call(p, linkset);
-
-				ast_mutex_unlock(&p->lock);
 
 				break;
 			case ISUP_EVENT_CCR:




More information about the asterisk-commits mailing list