Update of /cvsroot/monetdb/sql/src/backends/monet5
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv12591/src/backends/monet5

Modified Files:
      Tag: SQL_2-20
        sql_scenario.mx 
Log Message:
cleanup global variable initialization code (inline with m4)
fixed leak (free stmt as its dupped in stack_set_var)


Index: sql_scenario.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/backends/monet5/sql_scenario.mx,v
retrieving revision 1.277.2.5
retrieving revision 1.277.2.6
diff -u -d -r1.277.2.5 -r1.277.2.6
--- sql_scenario.mx     26 Oct 2007 20:36:11 -0000      1.277.2.5
+++ sql_scenario.mx     29 Oct 2007 08:07:36 -0000      1.277.2.6
@@ -91,7 +91,8 @@
 static void
 monet5_freestack(backend_stack stk)
 {
-       ptr p = (ptr)stk;
+       MalStkPtr p = (ptr)stk;
+
        if (p != NULL)
                GDKfree(p);
 #ifdef _SQL_SCENARIO_DEBUG
@@ -254,13 +255,12 @@
        return MAL_SUCCEED;
 }
 
[EMAIL PROTECTED]
[EMAIL PROTECTED] SQLglobal
-       name = @1;
-       r = stmt_var(_strdup(name), &ctype, 0, 1);
-       stack_push_var(sql, name, r, &ctype);
-       stack_set_var(sql, name, VALset(&src, ctype.type->localtype, @2));
[EMAIL PROTECTED]
+#define SQLglobal(name, val) \
+       r = stmt_var(_strdup(name), &ctype, 0, 1); \
+       stack_push_var(sql, name, r, &ctype);      \
+       stmt_destroy(r);                           \
+       stack_set_var(sql, name, VALset(&src, ctype.type->localtype, val));
+
 /* initialize the global variable, ie make mvc point to these */
 static int
 global_variables(mvc *sql, char *user, char *schema)
@@ -276,27 +276,27 @@
 
        typename = "int";
        sql_find_subtype(&ctype, typename, 0, 0);
-       @:SQLglobal("debug", &debug)@
+       SQLglobal("debug", &sql->debug);
 
        typename = "varchar";
        sql_find_subtype(&ctype, typename, 8, 0);
-       @:SQLglobal("explain", "")@
+       SQLglobal("explain", "");
 
        sql_find_subtype(&ctype, typename, 1024, 0);
-       @:SQLglobal("current_schema", schema)@
-       @:SQLglobal("current_user", user)@
-       @:SQLglobal("current_role", user)@
-       @:SQLglobal("optimizer", defaultPlan)@
+       SQLglobal("current_schema", schema);
+       SQLglobal("current_user", user);
+       SQLglobal("current_role", user);
+       SQLglobal("optimizer", defaultPlan);
 
        typename = "sec_interval";
        sql_find_subtype(&ctype, typename, 0, 0);
-       @:SQLglobal("current_timezone", &sec)@
+       SQLglobal("current_timezone", &sec);
 
        typename = "boolean";
        sql_find_subtype(&ctype, typename, 0, 0);
-       @:SQLglobal("cache", &T)@
-       @:SQLglobal("profile", &F)@
-       @:SQLglobal("trace", &F)@
+       SQLglobal("cache", &T);
+       SQLglobal("profile", &F);
+       SQLglobal("trace", &F);
        return 0;
 }
 


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Monetdb-sql-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-sql-checkins

Reply via email to