[libpri-commits] rmudgett: branch 1.4 r1255 - /branches/1.4/q931.c
    SVN commits to the libpri project 
    libpri-commits at lists.digium.com
       
    Mon Nov  2 17:29:03 CST 2009
    
    
  
Author: rmudgett
Date: Mon Nov  2 17:28:59 2009
New Revision: 1255
URL: http://svnview.digium.com/svn/libpri?view=rev&rev=1255
Log:
NT PTMP did not report busy when calling a busy phone.
The caller would not get a busy indication when calling a busy phone.
Timer T303 is not supposed to be stopped when RELEASE_COMPLETE received.
When T303 expires we will now report the last clearing cause code to the
caller if we received one.
Modified:
    branches/1.4/q931.c
Modified: branches/1.4/q931.c
URL: http://svnview.digium.com/svn/libpri/branches/1.4/q931.c?view=diff&rev=1255&r1=1254&r2=1255
==============================================================================
--- branches/1.4/q931.c (original)
+++ branches/1.4/q931.c Mon Nov  2 17:28:59 2009
@@ -4473,7 +4473,10 @@
 	c->t303_expirycnt++;
 	c->t303_timer = 0;
 
-	if (c->t303_expirycnt < 2) {
+	if (c->cause != -1) {
+		/* We got a DISCONNECT, RELEASE, or RELEASE_COMPLETE and no other responses. */
+		pri_fake_clearing(c);
+	} else if (c->t303_expirycnt < 2) {
 		if (ctrl->subchannel && !ctrl->bri)
 			res = send_message(ctrl, c, Q931_SETUP, gr303_setup_ies);
 		else if (c->cis_call)
@@ -6581,7 +6584,6 @@
 		}
 		break;
 	case Q931_RELEASE_COMPLETE:
-		stop_t303(c);
 		c->hangupinitiated = 1;
 		UPDATE_OURCALLSTATE(ctrl, c, Q931_CALL_STATE_NULL);
 		c->peercallstate = Q931_CALL_STATE_NULL;
    
    
More information about the libpri-commits
mailing list