[asterisk-commits] crichter: branch 1.4 r44994 - in /branches/1.4: ./ channels/misdn/

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Fri Oct 13 00:52:42 MST 2006


Author: crichter
Date: Fri Oct 13 02:52:41 2006
New Revision: 44994

URL: http://svn.digium.com/view/asterisk?rev=44994&view=rev
Log:
Merged revisions 44993 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r44993 | crichter | 2006-10-13 09:40:07 +0200 (Fr, 13 Okt 2006) | 1 line

fixed issue, that the hangupcause got a wrong isdn cause at RELEASE_COMPLETE
........

Modified:
    branches/1.4/   (props changed)
    branches/1.4/channels/misdn/isdn_msg_parser.c

Propchange: branches/1.4/
------------------------------------------------------------------------------
Binary property 'branch-1.2-merged' - no diff available.

Modified: branches/1.4/channels/misdn/isdn_msg_parser.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/channels/misdn/isdn_msg_parser.c?rev=44994&r1=44993&r2=44994&view=diff
==============================================================================
--- branches/1.4/channels/misdn/isdn_msg_parser.c (original)
+++ branches/1.4/channels/misdn/isdn_msg_parser.c Fri Oct 13 02:52:41 2006
@@ -753,8 +753,9 @@
 	int HEADER_LEN = nt?mISDNUSER_HEAD_SIZE:mISDN_HEADER_LEN;
 	DISCONNECT_t *disconnect=(DISCONNECT_t*)((unsigned long)(msg->data+HEADER_LEN));
 	int location;
-  
-	dec_ie_cause(disconnect->CAUSE, (Q931_info_t *)(disconnect), &location, &bc->cause, nt,bc);
+ 	int cause; 
+	dec_ie_cause(disconnect->CAUSE, (Q931_info_t *)(disconnect), &location, &cause, nt,bc);
+	if (cause>0) bc->cause=cause;
 
 	dec_ie_progress(disconnect->PROGRESS, (Q931_info_t *)disconnect, &bc->progress_coding, &bc->progress_location, &bc->progress_indicator, nt, bc);
 #if DEBUG 
@@ -823,8 +824,10 @@
 	int HEADER_LEN = nt?mISDNUSER_HEAD_SIZE:mISDN_HEADER_LEN;
 	RELEASE_t *release=(RELEASE_t*)((unsigned long)(msg->data+HEADER_LEN));
 	int location;
-  
-	dec_ie_cause(release->CAUSE, (Q931_info_t *)(release), &location, &bc->cause, nt,bc);
+	int cause;
+  
+	dec_ie_cause(release->CAUSE, (Q931_info_t *)(release), &location, &cause, nt,bc);
+	if (cause>0) bc->cause=cause;
 #if DEBUG 
 	printf("Parsing RELEASE Msg\n"); 
 #endif
@@ -854,6 +857,7 @@
 	int HEADER_LEN = nt?mISDNUSER_HEAD_SIZE:mISDN_HEADER_LEN;
 	RELEASE_COMPLETE_t *release_complete=(RELEASE_COMPLETE_t*)((unsigned long)(msg->data+HEADER_LEN));
 	int location;
+	int cause;
 	iframe_t *frm = (iframe_t*) msg->data;
 
 	struct misdn_stack *stack=get_stack_by_bc(bc);
@@ -874,7 +878,8 @@
 			return;
 		}
 	}
-	dec_ie_cause(release_complete->CAUSE, (Q931_info_t *)(release_complete), &location, &bc->cause, nt,bc);
+	dec_ie_cause(release_complete->CAUSE, (Q931_info_t *)(release_complete), &location, &cause, nt,bc);
+	if (cause>0) bc->cause=cause;
 
 #if DEBUG 
 	printf("Parsing RELEASE_COMPLETE Msg\n"); 
@@ -1050,8 +1055,10 @@
 	int HEADER_LEN = nt?mISDNUSER_HEAD_SIZE:mISDN_HEADER_LEN;
 	STATUS_t *status=(STATUS_t*)((unsigned long)(msg->data+HEADER_LEN));
 	int location;
-  
-	dec_ie_cause(status->CAUSE, (Q931_info_t *)(status), &location, &bc->cause, nt,bc);
+	int cause;
+  
+	dec_ie_cause(status->CAUSE, (Q931_info_t *)(status), &location, &cause, nt,bc);
+	if (cause>0) bc->cause=cause;
 	;
 
 #if DEBUG 



More information about the asterisk-commits mailing list