Fixing memory leaks ...
authorHamed <hamed.gorjiara@gmail.com>
Wed, 19 Jul 2017 19:09:46 +0000 (12:09 -0700)
committerHamed <hamed.gorjiara@gmail.com>
Wed, 19 Jul 2017 19:09:46 +0000 (12:09 -0700)
src/AST/boolean.c

index 05feefb50996146ce76cad25930d15e91411d260..e4e9ddd0ac729d68b1d83482974ca71c4174e875 100644 (file)
@@ -51,14 +51,19 @@ Boolean * allocBooleanLogicArray(CSolver *solver, LogicOp op, Boolean ** array,
 
 void deleteBoolean(Boolean * This) {
        switch(GETBOOLEANTYPE(This)){
-       case PREDICATEOP: {
-               BooleanPredicate *bp=(BooleanPredicate *)This;
-               deleteInlineArrayElement(& bp->inputs );
-               deleteFunctionEncoding(& bp->encoding);
-               break;
-       }
-       default:
-               break;
+               case PREDICATEOP:{
+                       BooleanPredicate *bp=(BooleanPredicate *)This;
+                       deleteInlineArrayElement(& bp->inputs );
+                       deleteFunctionEncoding(& bp->encoding);
+                       break;
+               }
+               case LOGICOP:{
+                       BooleanLogic* bl = (BooleanLogic*) This;
+                       deleteInlineArrayBoolean(&bl->inputs);
+                       break;
+               }
+               default:
+                       break;
        }
        deleteVectorArrayBoolean(GETBOOLEANPARENTS(This));
        ourfree(This);