Changeset: 4ca1701ba665 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4ca1701ba665 Modified Files: monetdb5/optimizer/opt_mergetable.c sql/backends/monet5/sql_gencode.c testing/Mdiff.c Branch: default Log Message:
merged with Jun2016 diffs (84 lines): diff --git a/monetdb5/optimizer/opt_mergetable.c b/monetdb5/optimizer/opt_mergetable.c --- a/monetdb5/optimizer/opt_mergetable.c +++ b/monetdb5/optimizer/opt_mergetable.c @@ -716,6 +716,7 @@ mat_joinNxM(Client cntxt, MalBlkPtr mb, int nr_mv1 = split, nr_mv2 = nr_mats-split; if (split < 0) { + GDKfree(mats); mb->errors++; return ; } @@ -767,6 +768,7 @@ mat_joinNxM(Client cntxt, MalBlkPtr mb, } mat_add(ml, l, mat_none, getFunctionId(p)); mat_add(ml, r, mat_none, getFunctionId(p)); + GDKfree(mats); } 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 @@ -3084,7 +3084,7 @@ backend_create_sql_func(backend *be, sql Symbol backup = NULL; stmt *s; int i, retseen = 0, sideeffects = 0, vararg = (f->varres || f->vararg), no_inline = 0; - 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)) @@ -3094,7 +3094,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); @@ -3190,8 +3189,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 checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list