Changeset: 5291548294ef for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/5291548294ef
Modified Files:
sql/backends/monet5/sql_gencode.c
sql/server/rel_dump.c
Branch: check
Log Message:
clean up memory management
diffs (53 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
@@ -330,7 +330,7 @@ static int
node *n;
int i, q, v, res = -1, added_to_cache = 0, *lret, *rret;
size_t len = 1024, nr, pwlen = 0;
- char *lname = NULL, *buf = NULL, *mal_session_uuid, *err = NULL,
*pwhash = NULL;
+ char *lname = NULL, *rel_str, *buf = NULL, *mal_session_uuid, *err =
NULL, *pwhash = NULL;
str username = NULL, password = NULL, msg = NULL;
sql_rel *r = rel;
@@ -487,23 +487,21 @@ static int
pushInstruction(curBlk, o);
p = pushArgument(curBlk, p, getArg(o,0));
- if (!(buf = rel2str(m, rel))) {
+ if (!(rel_str = rel2str(m, rel))) {
freeInstruction(p);
sql_error(m, 10, SQLSTATE(HY013) MAL_MALLOC_FAIL);
goto cleanup;
}
o = newFcnCall(curBlk, remoteRef, putRef);
if (o == NULL) {
- free(buf);
freeInstruction(p);
sql_error(m, 10, SQLSTATE(HY013) MAL_MALLOC_FAIL);
goto cleanup;
}
o = pushArgument(curBlk, o, q);
- o = pushStr(curBlk, o, buf); /* relational plan */
+ o = pushStr(curBlk, o, rel_str); /* relational plan */
pushInstruction(curBlk, o);
p = pushArgument(curBlk, p, getArg(o,0));
- free(buf);
if (!(buf = sa_alloc(m->ta, len))) {
freeInstruction(p);
diff --git a/sql/server/rel_dump.c b/sql/server/rel_dump.c
--- a/sql/server/rel_dump.c
+++ b/sql/server/rel_dump.c
@@ -377,7 +377,10 @@ cleanup:
buffer_destroy(b);
if(s)
close_stream(s);
- return res;
+
+ char* fres = SA_STRDUP(sql->sa, res);
+ free (res);
+ return fres;
}
static void
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]