Cleanup/performance improve chan_sip slightly (bug #2823)
authorMark Spencer <markster@digium.com>
Thu, 11 Nov 2004 15:08:57 +0000 (15:08 +0000)
committerMark Spencer <markster@digium.com>
Thu, 11 Nov 2004 15:08:57 +0000 (15:08 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4203 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index a912741..a16dfea 100755 (executable)
@@ -1432,19 +1432,16 @@ static int sip_call(struct ast_channel *ast, char *dest, int timeout)
        headp=&ast->varshead;
        AST_LIST_TRAVERSE(headp,current,entries) {
                /* Check whether there is a VXML_URL variable */
        headp=&ast->varshead;
        AST_LIST_TRAVERSE(headp,current,entries) {
                /* Check whether there is a VXML_URL variable */
-               if (strcasecmp(ast_var_name(current),"VXML_URL")==0)
-               {
+               if (!vxml_url && !strcasecmp(ast_var_name(current),"VXML_URL")) {
                        vxml_url = ast_var_value(current);
                        vxml_url = ast_var_value(current);
-               } else
-               /* Check whether there is a ALERT_INFO variable */
-               if (strcasecmp(ast_var_name(current),"ALERT_INFO")==0)
-               {
+               } else if (!distinctive_ring && !strcasecmp(ast_var_name(current),"ALERT_INFO")) {
+                       /* Check whether there is a ALERT_INFO variable */
                        distinctive_ring = ast_var_value(current);
                }
 #ifdef OSP_SUPPORT
                        distinctive_ring = ast_var_value(current);
                }
 #ifdef OSP_SUPPORT
-               else if (!strcasecmp(ast_var_name(current), "OSPTOKEN")) {
+                 else if (!osptoken && !strcasecmp(ast_var_name(current), "OSPTOKEN")) {
                        osptoken = ast_var_value(current);
                        osptoken = ast_var_value(current);
-               } else if (!strcasecmp(ast_var_name(current), "OSPHANDLE")) {
+               } else if (!osphandle && !strcasecmp(ast_var_name(current), "OSPHANDLE")) {
                        osphandle = ast_var_value(current);
                }
 #endif
                        osphandle = ast_var_value(current);
                }
 #endif