Changeset: 6f842a5a199f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6f842a5a199f
Modified Files:
        monetdb5/mal/mal_parser.c
Branch: Jun2016
Log Message:

Memory leak.


diffs (39 lines):

diff --git a/monetdb5/mal/mal_parser.c b/monetdb5/mal/mal_parser.c
--- a/monetdb5/mal/mal_parser.c
+++ b/monetdb5/mal/mal_parser.c
@@ -1149,6 +1149,11 @@ fcnHeader(Client cntxt, int kind)
        curInstr = getInstrPtr(curBlk, 0);
 
        if (currChar(cntxt) != '('){
+               if (cntxt->backup) {
+                       freeSymbol(cntxt->curprg);
+                       cntxt->curprg = cntxt->backup;
+                       cntxt->backup = 0;
+               }
                parseError(cntxt, "function header '(' expected\n");
                skipToEnd(cntxt);
                return curBlk;
@@ -1160,6 +1165,7 @@ fcnHeader(Client cntxt, int kind)
 
        if (isModuleDefined(cntxt->nspace, getModuleId(curInstr)) == FALSE) {
                if (cntxt->backup) {
+                       freeSymbol(cntxt->curprg);
                        cntxt->curprg = cntxt->backup;
                        cntxt->backup = 0;
                }
@@ -1181,6 +1187,7 @@ fcnHeader(Client cntxt, int kind)
                        if (ch == ')')
                                break;
                        if (cntxt->backup) {
+                               freeSymbol(cntxt->curprg);
                                cntxt->curprg = cntxt->backup;
                                cntxt->backup = 0;
                        }
@@ -1262,6 +1269,7 @@ fcnHeader(Client cntxt, int kind)
                if (currChar(cntxt) != ')') {
                        freeInstruction(curInstr);
                        if (cntxt->backup) {
+                               freeSymbol(cntxt->curprg);
                                cntxt->curprg = cntxt->backup;
                                cntxt->backup = 0;
                        }
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to