[buddy] backport some fixes from upstream

* src/fdd.c, src/imatrix.c, src/kernel.c, src/reorder.c: Here.
This commit is contained in:
Alexandre Duret-Lutz 2015-03-11 23:32:48 +01:00
parent 2d13fd50ab
commit 1ffdd57383
4 changed files with 25 additions and 16 deletions

View file

@ -812,7 +812,7 @@ static void addref_rec(int r, char *dep)
if (r < 2)
return;
if (bddnodes[r].refcou == 0)
if (bddnodes[r].refcou == 0 || MARKED(r))
{
bddfreenum--;
@ -880,7 +880,10 @@ static int mark_roots(void)
}
if ((extroots=(int*)(malloc(sizeof(int)*extrootsize))) == NULL)
return bdd_error(BDD_MEMORY);
{
free(dep);
return bdd_error(BDD_MEMORY);
}
iactmtx = imatrixNew(bddvarnum);