Changeset: 68064e4eec7c for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=68064e4eec7c Modified Files: monetdb5/mal/mal_builder.c Branch: Jan2014 Log Message:
Close resource leak. diffs (64 lines): diff --git a/monetdb5/mal/mal_builder.c b/monetdb5/mal/mal_builder.c --- a/monetdb5/mal/mal_builder.c +++ b/monetdb5/mal/mal_builder.c @@ -418,6 +418,7 @@ pushNilType(MalBlkPtr mb, InstrPtr q, ch { int _t,idx; ValRecord cst; + str msg; if (q == NULL) return NULL; @@ -427,7 +428,11 @@ pushNilType(MalBlkPtr mb, InstrPtr q, ch cst.vtype=TYPE_void; cst.val.oval= oid_nil; cst.len = 0; - convertConstant(idx, &cst); + msg = convertConstant(idx, &cst); + if (msg != MAL_SUCCEED) { + GDKfree(msg); + return NULL; + } _t = defConstant(mb,idx,&cst); setVarUDFtype(mb,_t); @@ -438,13 +443,18 @@ pushType(MalBlkPtr mb, InstrPtr q, int t { int _t; ValRecord cst; + str msg; if (q == NULL) return NULL; cst.vtype=TYPE_void; cst.val.oval= oid_nil; cst.len = 0; - convertConstant(tpe, &cst); + msg = convertConstant(tpe, &cst); + if (msg != MAL_SUCCEED) { + GDKfree(msg); + return NULL; + } _t = defConstant(mb,tpe,&cst); setVarUDFtype(mb,_t); @@ -456,13 +466,18 @@ pushZero(MalBlkPtr mb, InstrPtr q, int t { int _t; ValRecord cst; + str msg; if (q == NULL) return NULL; cst.vtype=TYPE_int; cst.val.ival= 0; cst.len = 0; - convertConstant(tpe, &cst); + msg = convertConstant(tpe, &cst); + if (msg != MAL_SUCCEED) { + GDKfree(msg); + return NULL; + } _t = defConstant(mb,tpe,&cst); return pushArgument(mb, q, _t); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list