diff --git a/src/bdd/cudd/cuddBddAbs.c b/src/bdd/cudd/cuddBddAbs.c index a3892af1d..257dbbe31 100644 --- a/src/bdd/cudd/cuddBddAbs.c +++ b/src/bdd/cudd/cuddBddAbs.c @@ -434,8 +434,10 @@ cuddBddExistAbstractRecur( Cudd_IterDerefBdd(manager, res2); return(NULL); } - cuddDeref(res1); - cuddDeref(res2); + cuddRef(res); //Added + Cudd_IterDerefBdd(manager, res1); //cuddDeref(res1); + Cudd_IterDerefBdd(manager, res2); //cuddDeref(res2); + cuddDeref(res); //Added if (F->ref != 1) cuddCacheInsert2(manager, Cudd_bddExistAbstract, f, cube, res); return(res); diff --git a/src/bdd/cudd/cuddInteract.c b/src/bdd/cudd/cuddInteract.c index 1d335c2a1..556732175 100644 --- a/src/bdd/cudd/cuddInteract.c +++ b/src/bdd/cudd/cuddInteract.c @@ -193,10 +193,10 @@ cuddTestInteract( int x, int y) { - int posn, word, bit, result; + long posn, word, bit, result; if (x > y) { - int tmp = x; + long tmp = x; x = y; y = tmp; }