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

Reply via email to