Changeset: 7a6fab6c788f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7a6fab6c788f
Modified Files:
sql/backends/monet5/sql_gencode.c
testing/Mdiff.c
Branch: Jun2016
Log Message:
cleanup malloc's in Mdiff (Mtest output is much cleaner)
cleanup sql allocator after mal function is created
diffs (65 lines):
diff --git a/sql/backends/monet5/sql_gencode.c
b/sql/backends/monet5/sql_gencode.c
--- a/sql/backends/monet5/sql_gencode.c
+++ b/sql/backends/monet5/sql_gencode.c
@@ -3047,7 +3047,7 @@ backend_create_sql_func(backend *be, sql
Symbol backup = NULL;
stmt *s;
int i, retseen = 0, sideeffects = 0, vararg = (f->varres || f->vararg);
- sql_allocator *sa, *osa = m->sa;
+ sql_allocator *sa;
/* nothing to do for internal and ready (not recompiling) functions */
if (!f->sql || (!vararg && f->sql > 1))
@@ -3057,7 +3057,6 @@ backend_create_sql_func(backend *be, sql
sa = sa_create();
m->session->schema = f->s;
s = sql_parse(m, sa, f->query, m_instantiate);
- m->sa = osa;
m->session->schema = schema;
if (s && !f->sql) { /* native function */
sa_destroy(sa);
@@ -3152,8 +3151,7 @@ backend_create_sql_func(backend *be, sql
curBlk->inlineProp =1;
if (sideeffects)
curBlk->unsafeProp = 1;
- f->sa = sa;
- m->sa = osa;
+ sa_destroy(sa);
addQueryToCache(c);
if (backup)
c->curprg = backup;
diff --git a/testing/Mdiff.c b/testing/Mdiff.c
--- a/testing/Mdiff.c
+++ b/testing/Mdiff.c
@@ -53,7 +53,7 @@ main(int argc, char **argv)
char DEFAULT[] = "-I'^#'";
#endif
char ignoreWHITE[] = " -b -B";
- char *old_fn, *new_fn, *html_fn, *caption = EMPTY, *revision = EMPTY,
*ignoreEXP = DEFAULT, *ignore, *function = "";
+ char *old_fn, *new_fn, *html_fn, *caption = EMPTY, *revision = EMPTY,
*ignoreEXP = DEFAULT, *ignore = NULL, *function = EMPTY;
int LWC = 1, context = 1, option, mindiff = 0, quiet = 0;
while ((option = getopt(argc, argv, "hdqA:C:I:F:t:r:")) != EOF)
@@ -108,6 +108,10 @@ main(int argc, char **argv)
case 'h':
default:
showUsage(argv[0]);
+ if (ignoreEXP != DEFAULT)
+ free(ignoreEXP);
+ if (function != EMPTY)
+ free(function);
exit(1);
}
@@ -142,6 +146,11 @@ main(int argc, char **argv)
}
break;
}
+ free(ignore);
+ if (ignoreEXP != DEFAULT)
+ free(ignoreEXP);
+ if (function != EMPTY)
+ free(function);
TRACE(fprintf(STDERR, "done.\n"));
return 0;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list