mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Remove some unnecessary calls to xaccGroupMarkNotSaved() which were
dirtying the book implicitly without setting any time of first change. Instead, make sure that committed Splits dirty their parent Transaction. git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13958 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
@@ -512,8 +512,6 @@ xaccSplitCommitEdit(Split *s)
|
||||
GList *node = g_list_find (orig_acc->splits, s);
|
||||
if (node) {
|
||||
orig_acc->splits = g_list_delete_link (orig_acc->splits, node);
|
||||
//FIXME: probably not needed.
|
||||
xaccGroupMarkNotSaved (orig_acc->parent);
|
||||
//FIXME: find better event type
|
||||
qof_event_gen (&orig_acc->inst.entity, QOF_EVENT_MODIFY, NULL);
|
||||
// And send the account-based event, too
|
||||
@@ -539,7 +537,6 @@ xaccSplitCommitEdit(Split *s)
|
||||
if (s->lot && (NULL == s->lot->account))
|
||||
xaccAccountInsertLot (acc, s->lot);
|
||||
|
||||
xaccGroupMarkNotSaved (acc->parent); //FIXME: probably not needed.
|
||||
//FIXME: find better event
|
||||
qof_event_gen (&acc->inst.entity, QOF_EVENT_MODIFY, NULL);
|
||||
|
||||
@@ -568,6 +565,9 @@ xaccSplitCommitEdit(Split *s)
|
||||
s->orig_parent = s->parent;
|
||||
qof_instance_mark_clean(QOF_INSTANCE(s));
|
||||
|
||||
/* This is because Splits don't call qof_commit_edit(). */
|
||||
qof_instance_set_dirty(QOF_INSTANCE(s->parent));
|
||||
|
||||
mark_acc(acc);
|
||||
xaccAccountRecomputeBalance(acc);
|
||||
if (s->inst.do_free)
|
||||
|
||||
@@ -219,10 +219,8 @@ void gen_event_trans (Transaction *trans)
|
||||
Account *account = s->acc;
|
||||
GNCLot *lot = s->lot;
|
||||
if (account)
|
||||
{
|
||||
xaccGroupMarkNotSaved (account->parent);
|
||||
qof_event_gen (&account->inst.entity, GNC_EVENT_ITEM_CHANGED, s);
|
||||
}
|
||||
|
||||
if (lot)
|
||||
{
|
||||
/* A change of transaction date might affect opening date of lot */
|
||||
@@ -867,9 +865,7 @@ destroy_gains (Transaction *trans)
|
||||
if (s->gains_split && (GAINS_STATUS_GAINS & s->gains_split->gains))
|
||||
{
|
||||
Transaction *t = s->gains_split->parent;
|
||||
xaccTransBeginEdit (t);
|
||||
xaccTransDestroy (t);
|
||||
xaccTransCommitEdit (t);
|
||||
s->gains_split = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user