gnucash master: Multiple changes pushed

Christopher Lam clam at code.gnucash.org
Thu Jan 26 07:33:02 EST 2023


Updated	 via  https://github.com/Gnucash/gnucash/commit/17820ec2 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/f4c6d653 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/46f9fb01 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/71d73beb (commit)
	 via  https://github.com/Gnucash/gnucash/commit/cacdb12a (commit)
	 via  https://github.com/Gnucash/gnucash/commit/77cf90f1 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/a76fa563 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/a9a3ed42 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/6a9ff287 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/b421b3d2 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/c2a6f1e9 (commit)
	from  https://github.com/Gnucash/gnucash/commit/4739e8ce (commit)



commit 17820ec26198e040b5eed08f504440913bab3285
Merge: 4739e8ce0 f4c6d6539
Author: Christopher Lam <christopher.lck at gmail.com>
Date:   Thu Jan 26 18:40:44 2023 +0800

    Merge branch 'maint'

commit f4c6d6539546f4bfbd49fa4dacaad899dc879d19
Merge: 46f9fb01c 71d73beb6
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Jan 24 13:25:02 2023 -0800

    Merge Bob Fewell's 'nofree' into maint.

commit 46f9fb01c972615ff77152f0c76489d761925e15
Author: John Ralls <jralls at ceridwen.us>
Date:   Tue Jan 24 09:46:48 2023 -0800

    Simplify gnc_commodity equality and compare functions.
    
    gnc_commodity_compare is used for sorting and so needs to have a less-than
    return value. The only place it's used presents nothing to the UI; a GncGUID
    ordering is fast and stable.
    
    GnuCash allows only one commodity per book for any namespace/mnemonic pair, so
    the exhaustive string comparisons are superflous. While the current engine
    design allows only one instance of any object, meaning that a pointer comparison
    is sufficient to determine equality, that may not be true in the future, but the
    GncGUID is guaranteed to sufficiently identify a single commodity. Note that
    gnc_commodity_equiv is used to enforce that single-commodity rule and so cannot
    use GncGUID comparison.

commit 71d73beb6cd87fb0d4f59f3a3c1ae46867c73baf
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Sat Jul 17 14:26:44 2021 +0100

    Original splits are not freed in xaccTransRollbackEdit
    
    At the beginning of a transactions edit, xaccTransBeginEdit is used and
    part of that duplicates the existing splits so that they can be
    restored if editing is cancelled. If cancelled, xaccTransRollbackEdit
    is used to restore the origin splits but if a split was not changed,
    the copy was not being freed so loop over the original split list and
    free them.

commit cacdb12aa5a5429af8dd0eac67ea9acca896e879
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Fri Jul 16 09:41:21 2021 +0100

    Dereference the prices used in function convert_price
    
    The two prices used in convert_price had there reference count
    increased in extract_common_prices. This lead to the reference count
    continuously increasing and not being freed on close so add
    gnc_price_unref on both prices to reduce the reference count.

commit 77cf90f198c6cca27d74359ddbf989e64073c6e8
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Tue Jul 13 15:20:23 2021 +0100

    Free the template root account after the scheduled transactions
    have been freed.

commit a76fa5631c9b0abb8bdbe3d132ebe155b87d0a77
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Tue Jul 13 15:12:12 2021 +0100

    Free schedule Transaction accounts
    
    There is no need to act differently when destroying the scheduled
    transactions accounts, they can be destroyed when the scheduled
    transaction is freed under normal conditions and on book close.

commit a9a3ed425a5fb8ce8da9ffd11fa380176f298176
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Tue Jul 13 15:10:35 2021 +0100

    Free Accounts on book close

commit 6a9ff287cddf1bee55c5d05331e0487372347151
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Sat Aug 14 11:01:38 2021 +0100

    Wrap BillTermDecRef and TaxTableDecRef in test for shutdown
    
    When Gnucash is shutting down, the TaxTables and BillTerms will be
    destroyed/freed and may already have been so there is no point trying
    to decrement a reference that is used to stop them being destroyed if
    in use.

commit b421b3d2af7dfaecbf2c6befbdfe374c16ad123a
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Tue Jul 13 15:09:11 2021 +0100

    Free Jobs for Customers and Vendors on book close

commit c2a6f1e9111ce0b2105ef8f4c4446a6ccc3d6672
Author: Robert Fewell <14uBobIT at gmail.com>
Date:   Tue Jul 13 15:05:59 2021 +0100

    Free TaxTable and BillTerms on book close



Summary of changes:
 libgnucash/engine/Account.cpp     | 26 +++++++++++---
 libgnucash/engine/SX-book.c       |  4 +--
 libgnucash/engine/SchedXaction.c  | 17 ++++------
 libgnucash/engine/Transaction.c   |  7 ++--
 libgnucash/engine/gnc-commodity.c | 71 +++++++--------------------------------
 libgnucash/engine/gnc-pricedb.c   |  3 ++
 libgnucash/engine/gncBillTerm.c   | 14 ++++++++
 libgnucash/engine/gncCustomer.c   | 11 +++---
 libgnucash/engine/gncEntry.c      | 12 ++++---
 libgnucash/engine/gncInvoice.c    | 10 ++++--
 libgnucash/engine/gncJob.c        | 12 +++++++
 libgnucash/engine/gncJob.h        |  1 +
 libgnucash/engine/gncTaxTable.c   | 13 +++++++
 libgnucash/engine/gncVendor.c     | 13 ++++---
 14 files changed, 121 insertions(+), 93 deletions(-)



More information about the gnucash-patches mailing list