Don't show duplicate transactions in journal mode.

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3205 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
Dave Peticolas 2000-11-28 09:01:18 +00:00
parent a46cc74491
commit 1d4b894356

View File

@ -3588,6 +3588,7 @@ xaccSRLoadRegister (SplitRegister *reg, Split **slist,
Split *blank_split = xaccSplitLookup(&info->blank_split_guid);
Transaction *pending_trans = xaccTransLookup(&info->pending_trans_guid);
SplitRegisterBuffer *reg_buffer;
GHashTable *trans_table = NULL;
CellBlock *lead_cursor;
Transaction *find_trans;
Transaction *trans;
@ -3698,6 +3699,9 @@ xaccSRLoadRegister (SplitRegister *reg, Split **slist,
table->dividing_row = -1;
if (multi_line)
trans_table = g_hash_table_new (g_direct_hash, g_direct_equal);
/* populate the table */
if (slist)
split = slist[0];
@ -3715,6 +3719,13 @@ xaccSRLoadRegister (SplitRegister *reg, Split **slist,
if (split == blank_split)
continue;
if (multi_line)
{
if (g_hash_table_lookup (trans_table, trans))
continue;
g_hash_table_insert (trans_table, trans, trans);
}
if (info->show_present_divider &&
!found_divider &&
(present < xaccTransGetDate (trans)))
@ -3756,6 +3767,9 @@ xaccSRLoadRegister (SplitRegister *reg, Split **slist,
start_primary_color = !start_primary_color;
}
if (multi_line)
g_hash_table_destroy (trans_table);
/* add the blank split at the end. */
split = blank_split;
trans = xaccSplitGetParent (split);