[asterisk-commits] tilghman: branch 1.4 r204170 - /branches/1.4/funcs/

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Mon Jun 29 14:36:05 CDT 2009


Author: tilghman
Date: Mon Jun 29 14:36:01 2009
New Revision: 204170

URL: http://svn.asterisk.org/svn-view/asterisk?view=rev&rev=204170
Log:
Revision 189537 was supposed to make 1.4 more correct.  Instead, it broke func_odbc.  Reverting.
(closes issue #15317, issue #14614)

Modified:
    branches/1.4/funcs/func_odbc.c
    branches/1.4/funcs/func_strings.c

Modified: branches/1.4/funcs/func_odbc.c
URL: http://svn.asterisk.org/svn-view/asterisk/branches/1.4/funcs/func_odbc.c?view=diff&rev=204170&r1=204169&r2=204170
==============================================================================
--- branches/1.4/funcs/func_odbc.c (original)
+++ branches/1.4/funcs/func_odbc.c Mon Jun 29 14:36:01 2009
@@ -227,9 +227,6 @@
 	SQLSMALLINT colcount=0;
 	SQLLEN indicator;
 
-	/* Reset, in case of an error */
-	pbx_builtin_setvar_helper(chan, "~ODBCVALUES~", "");
-
 	AST_LIST_LOCK(&queries);
 	AST_LIST_TRAVERSE(&queries, query, list) {
 		if (!strcmp(query->acf->name, cmd)) {
@@ -348,9 +345,9 @@
 			return -1;
 		}
 
-		/* Copy data, encoding '\', ',', '"', and '|' for the argument parser */
+		/* Copy data, encoding '\' and ',' for the argument parser */
 		for (i = 0; i < sizeof(coldata); i++) {
-			if (escapecommas && strchr("\\,|\"", coldata[i])) {
+			if (escapecommas && (coldata[i] == '\\' || coldata[i] == ',')) {
 				buf[buflen++] = '\\';
 			}
 			buf[buflen++] = coldata[i];
@@ -371,10 +368,6 @@
 	SQLCloseCursor(stmt);
 	SQLFreeHandle(SQL_HANDLE_STMT, stmt);
 	ast_odbc_release_obj(obj);
-
-	/* Pass an unadulterated string to ARRAY, if needed.  This is only needed
-	 * in 1.4, because of the misfeature in Set. */
-	pbx_builtin_setvar_helper(chan, "~ODBCVALUES~", buf);
 	if (chan)
 		ast_autoservice_stop(chan);
 	if (bogus_chan)

Modified: branches/1.4/funcs/func_strings.c
URL: http://svn.asterisk.org/svn-view/asterisk/branches/1.4/funcs/func_strings.c?view=diff&rev=204170&r1=204169&r2=204170
==============================================================================
--- branches/1.4/funcs/func_strings.c (original)
+++ branches/1.4/funcs/func_strings.c Mon Jun 29 14:36:01 2009
@@ -162,23 +162,6 @@
 	.read = regex,
 };
 
-static int strecmp(const char *pre, const char *post)
-{
-	int res;
-	for (; *pre && *post; pre++, post++) {
-		if (*pre == '"') {
-			post--;
-			continue;
-		} else if (*pre == '\\') {
-			pre++;
-		}
-		if ((res = strncmp(pre, post, 1))) {
-			return res;
-		}
-	}
-	return strncmp(pre, post, 1);
-}
-
 static int array(struct ast_channel *chan, char *cmd, char *var,
 		 const char *value)
 {
@@ -190,15 +173,6 @@
 	);
 	char *value2;
 	int i;
-
-	if (chan) {
-		const char *value3;
-		ast_mutex_lock(&chan->lock);
-		if ((value3 = pbx_builtin_getvar_helper(chan, "~ODBCVALUES~")) && strecmp(value3, value) == 0) {
-			value = ast_strdupa(value3);
-		}
-		ast_mutex_unlock(&chan->lock);
-	}
 
 	value2 = ast_strdupa(value);
 	if (!var || !value2)




More information about the asterisk-commits mailing list