The template root should be unset so that it's destroyed when the book is
ending. This is required to free all the template accounts and referenced
strings.
The scheduled transactions themselves need to be freed first so reverse
the order that SXRegister and gnc_sxtt_register are called in
cashobjects_register: The list resulting from that function is traversed
from the bottom up.
gnc_start_recn_update_cb is now amount_edit_focus_out_cb and
gnc_start_recn_date_changed is now recn_date_changed_cb.
Also add Doxygen comments for amount_edit_focus_out_cb and convert
recn_date_changed_cb comments to Doxygen format.
This was an effort of somewhat dubious value to detect if a process
on another ocmputer had a hsrd-link to a lockfile on an NFS share.
NFS is rarely used now and SMB doesn't support hard links so this check
adds complexity with no real value.
count splits that aren't really in the transaction.
The rewrite left out one test. This was most obvious in the dummy
transaction used to enter a new transaction into an account.
xaccSplitGetOtherSplit never returned an "other split" for this
transaction. It turns out the old code was broken too, but
it worked for this case by coincidence.
- Remove and cleanup duplicate code
- C++-ify
- Run code in gnucash-cli commands related to reports.
Users may want to load modified report code via
config-user.scm which they want to access while
executing cli commands
subsequent times Statement Date is updated.
This was because at end of gnc_start_recn_date_changed(),
gnc_start_recn_update_cb() was called when it should not have been.
This caused the user_set_value flag to be set True (indicating statement
end amount was manually entered - which it wasn't) after the date is
changed. This causes the ending balance to NOT be recalculated when the
end date is subsequently changed.
- init struct members properly to: is_unset and TriState::Unset
- test acct kvp "equity-type" for "opening-balance" instead of "true"
- cached account->color/sort_order/notes/filter gets strstripped
similarly to previous behavior
Both dumped core in gnc_import_TransInfo_get_action() because info
is null
1. After double clicking on a potential match line, then right clicking
on the the parent transaction of the potential match
2. After rubber banding a group of transactions which also includes an
expanded potential match. Sometimes also need to right click the
selection to trigger the core dump.
The OpenExchange exchange rate source in Finance::Quote produces
some ridiculously precise prices like #e6.95253159056541e-5 which
produce a denominator greater than INT64_MAX. Use the rationalize
function to bring them back to reality.
Continuation of ff2ceb111 which introduced issue whereby user_symbol
returned could become stale, leading to invalid read fixed with
c398bef59. There are likely other user_symbol pointers becoming stale
without this commit.
This change will save the user_symbol into the commodity struct,
avoids gchar* becoming stale.
in gnc_tree_view_account_select_subaccounts, gcc thinks have_end might
not be initialized, but since the function exits if num_children == 0,
the while (num_children) loop will always be entered. Silence the
warning.