fix recursion bug

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9085 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
Linas Vepstas 2003-08-16 04:13:24 +00:00
parent 7376a5625b
commit 96cf4db1f5

View File

@ -254,6 +254,8 @@ trans_has_open_lot_tree (Transaction *trans)
SplitList *split_list, *node; SplitList *split_list, *node;
if (trans->marker) return FALSE; if (trans->marker) return FALSE;
trans->marker = 1;
split_list = xaccTransGetSplitList (trans); split_list = xaccTransGetSplitList (trans);
for (node = split_list; node; node=node->next) for (node = split_list; node; node=node->next)
{ {
@ -263,7 +265,6 @@ trans_has_open_lot_tree (Transaction *trans)
if (FALSE == gnc_lot_is_closed(lot)) return TRUE; if (FALSE == gnc_lot_is_closed(lot)) return TRUE;
if (lot_has_open_trans_tree (lot)) return TRUE; if (lot_has_open_trans_tree (lot)) return TRUE;
} }
trans->marker = 1;
return FALSE; return FALSE;
} }
@ -273,6 +274,8 @@ lot_has_open_trans_tree (GNCLot *lot)
SplitList *split_list, *snode; SplitList *split_list, *snode;
if (lot->marker) return FALSE; if (lot->marker) return FALSE;
lot->marker = 1;
if (FALSE == gnc_lot_is_closed(lot)) return TRUE; if (FALSE == gnc_lot_is_closed(lot)) return TRUE;
split_list = gnc_lot_get_split_list (lot); split_list = gnc_lot_get_split_list (lot);
@ -282,7 +285,6 @@ lot_has_open_trans_tree (GNCLot *lot)
Transaction *trans = s->parent; Transaction *trans = s->parent;
if (trans_has_open_lot_tree (trans)) return TRUE; if (trans_has_open_lot_tree (trans)) return TRUE;
} }
lot->marker = 1;
return FALSE; return FALSE;
} }