[Asterisk-cvs] asterisk/apps app_disa.c,1.21,1.22

markster at lists.digium.com markster at lists.digium.com
Wed Dec 15 15:24:17 CST 2004


Update of /usr/cvsroot/asterisk/apps
In directory mongoose.digium.com:/tmp/cvs-serv31738/apps

Modified Files:
	app_disa.c 
Log Message:
Fix DISA with callerid (bug #3058)


Index: app_disa.c
===================================================================
RCS file: /usr/cvsroot/asterisk/apps/app_disa.c,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- app_disa.c	15 Dec 2004 15:40:29 -0000	1.21
+++ app_disa.c	15 Dec 2004 20:20:58 -0000	1.22
@@ -114,7 +114,7 @@
 	int digittimeout = 10000;
 	struct localuser *u;
 	char tmp[256],arg2[256]="",exten[AST_MAX_EXTENSION],acctcode[20]="";
-	char *ourcontext,*ourcallerid,*mailbox;
+	char *ourcontext,*ourcallerid,*ourcidname,*ourcidnum,*mailbox;
 	struct ast_frame *f;
 	struct timeval lastout, now, lastdigittime;
 	int res;
@@ -323,8 +323,8 @@
 		/* We're authenticated and have a valid extension */
 		if (ourcallerid && *ourcallerid)
 		{
-			if (chan->cid.cid_num) free(chan->cid.cid_num);
-			chan->cid.cid_num = strdup(ourcallerid);
+			ast_callerid_split(ourcallerid, ourcidname, sizeof(ourcidname), ourcidnum, sizeof(ourcidnum));
+			ast_set_callerid(chan, ourcidnum, ourcidname, ourcidnum);
 		}
 		strncpy(chan->exten, exten, sizeof(chan->exten) - 1);
 		strncpy(chan->context, ourcontext, sizeof(chan->context) - 1);




More information about the svn-commits mailing list