Changeset: c99dce8bef5e for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c99dce8bef5e
Modified Files:
sql/backends/monet5/sql_execute.c
Branch: Aug2018
Log Message:
Check for memory leak.
diffs (26 lines):
diff --git a/sql/backends/monet5/sql_execute.c
b/sql/backends/monet5/sql_execute.c
--- a/sql/backends/monet5/sql_execute.c
+++ b/sql/backends/monet5/sql_execute.c
@@ -622,15 +622,19 @@ SQLstatementIntern(Client c, str *expr,
if (err || c->curprg->def->errors || msg) {
/* restore the state */
+ char *error = NULL;
MSresetInstructions(c->curprg->def, oldstop);
freeVariables(c, c->curprg->def, c->glb, oldvtop);
c->curprg->def->errors = 0;
if (strlen(m->errstr) > 6 && m->errstr[5] == '!')
- msg = createException(PARSE, "SQLparser", "%s",
m->errstr);
+ error = createException(PARSE, "SQLparser",
"%s", m->errstr);
else if (*m->errstr)
- msg = createException(PARSE, "SQLparser",
SQLSTATE(42000) "%s", m->errstr);
+ error = createException(PARSE, "SQLparser",
SQLSTATE(42000) "%s", m->errstr);
else
- msg = createException(PARSE, "SQLparser",
SQLSTATE(42000) "%s", msg);
+ error = createException(PARSE, "SQLparser",
SQLSTATE(42000) "%s", msg);
+ if (msg)
+ freeException(msg);
+ msg = error;
*m->errstr = 0;
goto endofcompile;
}
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list