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");

_______________________________________________
Asterisk-Cvs mailing list
[email protected]
http://lists.digium.com/mailman/listinfo/asterisk-cvs

Reply via email to