[Asterisk-cvs] asterisk-addons/asterisk-ooh323c/ooh323c/src ooStackCmds.c, 1.3, 1.4

vphirke at lists.digium.com vphirke at lists.digium.com
Thu Jun 23 17:04:53 CDT 2005


Update of /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src
In directory mongoose.digium.com:/tmp/cvs-serv22817/src

Modified Files:
	ooStackCmds.c 
Log Message:
Updated ooStackCmds.c

Index: ooStackCmds.c
===================================================================
RCS file: /usr/cvsroot/asterisk-addons/asterisk-ooh323c/ooh323c/src/ooStackCmds.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- ooStackCmds.c	3 Jun 2005 14:54:06 -0000	1.3
+++ ooStackCmds.c	23 Jun 2005 21:05:26 -0000	1.4
@@ -244,8 +244,11 @@
    if (gH323ep.stkCmdList.count > 0)
    {
       OOStackCommand *cmd;
-      while (0 != (cmd = dListDeleteHead (&gH323ep.ctxt, &gH323ep.stkCmdList)))
+      DListNode *pNode = NULL;
+      //while (0 !=(cmd=dListDeleteHead (&gH323ep.ctxt, &gH323ep.stkCmdList)))
+      while (0 != (pNode = dListFindByIndex(&gH323ep.stkCmdList, 0)))
       {
+         cmd = (OOStackCommand*)pNode->data;
 	 switch(cmd->type) {
             case OO_CMD_MAKECALL: 
 	       if(gH323ep.gkClient && 
@@ -261,6 +264,8 @@
 
 	       ooH323MakeCall ((char*)cmd->param1, (char*)cmd->param2, 
 			       (ooCallOptions*)cmd->param3);
+               dListRemove(&gH323ep.stkCmdList, pNode);
+               memFreePtr(&gH323ep.ctxt, pNode);
                break;
 
             case OO_CMD_ANSCALL:
@@ -274,12 +279,16 @@
                OOTRACEINFO2("Processing Answer Call command for %s\n",
                             (char*)cmd->param1);
                ooSendConnect(ooFindCallByToken((char*)cmd->param1));
+               dListRemove(&gH323ep.stkCmdList, pNode);
+               memFreePtr(&gH323ep.ctxt, pNode);
                break;
 
             case OO_CMD_FWDCALL:
                OOTRACEINFO3("Forwarding call %s to %s\n", (char*)cmd->param1,
                                                           (char*)cmd->param2);
                ooH323ForwardCall((char*)cmd->param1, (char*)cmd->param2);
+               dListRemove(&gH323ep.stkCmdList, pNode);
+               memFreePtr(&gH323ep.ctxt, pNode);
                break;
 
             case OO_CMD_HANGCALL: 
@@ -287,11 +296,15 @@
                              (char*)cmd->param1);
                ooH323HangCall((char*)cmd->param1, 
                                        *(OOCallClearReason*)cmd->param2);
+               dListRemove(&gH323ep.stkCmdList, pNode);
+               memFreePtr(&gH323ep.ctxt, pNode);
                break;
 
             case OO_CMD_STOPMONITOR: 
                OOTRACEINFO1("Processing StopMonitor command\n");
                ooStopMonitorCalls();
+               dListRemove(&gH323ep.stkCmdList, pNode);
+               memFreePtr(&gH323ep.ctxt, pNode);
                break;
 
             default: OOTRACEERR1("ERROR:Unhandled command\n");




More information about the svn-commits mailing list