From 9593088a566809d22365e8bef08107d931cd2651 Mon Sep 17 00:00:00 2001 From: Joshua Sled Date: Sun, 7 May 2006 21:52:15 +0000 Subject: [PATCH] Simply traversal impl. git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13944 57a11ea4-9604-0410-9ed3-97b8803252fd --- ChangeLog | 3 +++ src/engine/Group.c | 25 +++++++------------------ 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/ChangeLog b/ChangeLog index e3b03b7b78..6bb6818a4e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2006-05-07 Joshua Sled + * src/engine/Group.c (xaccAccountStagedTransactionTraversal): + Simplify. + * src/engine/test-core/test-engine-stuff.c (make_trans_query): Don't construct queries involving empty strings, as the query processor asserts that string match terms are not empty. Fixes diff --git a/src/engine/Group.c b/src/engine/Group.c index 1350e4cd1a..def381e88d 100644 --- a/src/engine/Group.c +++ b/src/engine/Group.c @@ -1092,35 +1092,24 @@ xaccAccountStagedTransactionTraversal (const Account *acc, void *cb_data), void *cb_data) { + GList *lp; if (!acc) return 0; - if (callback) + for(lp = acc->splits; lp; lp = lp->next) { - GList *lp; - for(lp = acc->splits; lp; lp = lp->next) + Split *s = (Split *) lp->data; + Transaction *trans = s->parent; + if (trans && (trans->marker < stage)) { - Split *s = (Split *) lp->data; - Transaction *trans = s->parent; - if (trans && (trans->marker < stage)) + trans->marker = stage; + if (callback) { int retval; - trans->marker = stage; retval = callback(trans, cb_data); if (retval) return retval; } } } - else - { - GList *lp; - for(lp = acc->splits; lp; lp = lp->next) - { - Split *s = (Split *) lp->data; - Transaction *trans = s->parent; - if (trans && (trans->marker < stage)) - trans->marker = stage; - } - } return 0; }