gnucash stable: Multiple changes pushed

Christopher Lam clam at code.gnucash.org
Sat Aug 31 08:53:47 EDT 2024


Updated	 via  https://github.com/Gnucash/gnucash/commit/dc84e4d1 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/1718fa0b (commit)
	from  https://github.com/Gnucash/gnucash/commit/a99491d0 (commit)



commit dc84e4d10c63a7defdca824005182cade2fa163f
Author: Christopher Lam <christopher.lck at gmail.com>
Date:   Sat Aug 31 20:46:05 2024 +0800

    [gnc-pricedb.h] remove unused gnc_pricedb_substitute_commodity

diff --git a/libgnucash/engine/gnc-pricedb-p.h b/libgnucash/engine/gnc-pricedb-p.h
index d1cfc343a1..207a8d2229 100644
--- a/libgnucash/engine/gnc-pricedb-p.h
+++ b/libgnucash/engine/gnc-pricedb-p.h
@@ -91,9 +91,6 @@ typedef struct gnc_price_lookup_helper_s
 } GNCPriceLookupHelper;
 
 #define  gnc_price_set_guid(P,G)  qof_instance_set_guid(QOF_INSTANCE(P),(G))
-void     gnc_pricedb_substitute_commodity(GNCPriceDB *db,
-        gnc_commodity *old_c,
-        gnc_commodity *new_c);
 
 /** register the pricedb object with the gncObject system */
 gboolean gnc_pricedb_register (void);
diff --git a/libgnucash/engine/gnc-pricedb.cpp b/libgnucash/engine/gnc-pricedb.cpp
index fbb4accc32..ae42a8409b 100644
--- a/libgnucash/engine/gnc-pricedb.cpp
+++ b/libgnucash/engine/gnc-pricedb.cpp
@@ -2744,66 +2744,6 @@ gnc_pricedb_foreach_price(GNCPriceDB *db,
     return unstable_price_traversal(db, f, user_data);
 }
 
-/* ==================================================================== */
-/* commodity substitution */
-
-typedef struct
-{
-    gnc_commodity *old_c;
-    gnc_commodity *new_c;
-} GNCPriceFixupData;
-
-static gboolean
-add_price_to_list (GNCPrice *p, gpointer data)
-{
-    auto list = static_cast<GList**>(data);
-
-    *list = g_list_prepend (*list, p);
-
-    return TRUE;
-}
-
-static void
-gnc_price_fixup_legacy_commods(gpointer data, gpointer user_data)
-{
-    auto p = static_cast<GNCPrice*>(data);
-    auto fixup_data = static_cast<GNCPriceFixupData*>(user_data);
-    gnc_commodity *price_c;
-
-    if (!p) return;
-
-    price_c = gnc_price_get_commodity(p);
-    if (gnc_commodity_equiv(price_c, fixup_data->old_c))
-    {
-        gnc_price_set_commodity (p, fixup_data->new_c);
-    }
-    price_c = gnc_price_get_currency(p);
-    if (gnc_commodity_equiv(price_c, fixup_data->old_c))
-    {
-        gnc_price_set_currency (p, fixup_data->new_c);
-    }
-}
-
-void
-gnc_pricedb_substitute_commodity(GNCPriceDB *db,
-                                 gnc_commodity *old_c,
-                                 gnc_commodity *new_c)
-{
-    GNCPriceFixupData data;
-    GList *prices = nullptr;
-
-    if (!db || !old_c || !new_c) return;
-
-    data.old_c = old_c;
-    data.new_c = new_c;
-
-    gnc_pricedb_foreach_price (db, add_price_to_list, &prices, FALSE);
-
-    g_list_foreach (prices, gnc_price_fixup_legacy_commods, &data);
-
-    g_list_free (prices);
-}
-
 /***************************************************************************/
 
 /* Semi-lame debugging code */
diff --git a/libgnucash/engine/test/utest-gnc-pricedb.c b/libgnucash/engine/test/utest-gnc-pricedb.c
index 25cbc67a61..35577406e9 100644
--- a/libgnucash/engine/test/utest-gnc-pricedb.c
+++ b/libgnucash/engine/test/utest-gnc-pricedb.c
@@ -1587,11 +1587,6 @@ gnc_price_fixup_legacy_commods(gpointer data, gpointer user_data)// Local: 0:1:0
 test_gnc_price_fixup_legacy_commods (Fixture *fixture, gconstpointer pData)
 {
 }*/
-// Not Used
-/* gnc_pricedb_substitute_commodity
-void
-gnc_pricedb_substitute_commodity(GNCPriceDB *db,// Local: 0:0:0
-*/
 /* gnc_price_print
 void
 gnc_price_print(GNCPrice *p, FILE *f, int indent)// Local: 1:0:0

commit 1718fa0b6ecae6d76846822b9387acb4892bfdbf
Author: Christopher Lam <christopher.lck at gmail.com>
Date:   Sat Aug 31 20:45:32 2024 +0800

    [gnc-pricedb.h] remove unused gnc_pricedb_lookup_at_time64

diff --git a/bindings/engine.i b/bindings/engine.i
index 5620f38e1c..c8dae2f043 100644
--- a/bindings/engine.i
+++ b/bindings/engine.i
@@ -191,7 +191,6 @@ functions. */
 %newobject gnc_pricedb_lookup_latest_before_any_currency_t64;
 %newobject gnc_pricedb_get_prices;
 %newobject gnc_pricedb_lookup_at_time;
-%newobject gnc_pricedb_lookup_at_time64;
 %newobject gnc_pricedb_lookup_day;
 %newobject gnc_pricedb_lookup_day_t64;
 
diff --git a/libgnucash/engine/gnc-pricedb.cpp b/libgnucash/engine/gnc-pricedb.cpp
index 43306fd16a..fbb4accc32 100644
--- a/libgnucash/engine/gnc-pricedb.cpp
+++ b/libgnucash/engine/gnc-pricedb.cpp
@@ -2178,33 +2178,6 @@ gnc_pricedb_lookup_day_t64(GNCPriceDB *db,
     return lookup_nearest_in_time(db, c, currency, t, TRUE);
 }
 
-// return 0 if price's time matches exactly
-static int price_same_time (GNCPrice *p, time64 *time)
-{
-    return !(gnc_price_get_time64 (p) == *time);
-}
-
-GNCPrice *
-gnc_pricedb_lookup_at_time64(GNCPriceDB *db,
-                             const gnc_commodity *c,
-                             const gnc_commodity *currency,
-                             time64 t)
-{
-    GNCPrice *rv = nullptr;
-    if (!db || !c || !currency) return nullptr;
-    ENTER ("db=%p commodity=%p currency=%p", db, c, currency);
-    auto price_list = pricedb_get_prices_internal (db, c, currency, TRUE);
-    auto p = g_list_find_custom (price_list, &t, (GCompareFunc) price_same_time);
-    if (p)
-    {
-        rv = GNC_PRICE (p->data);
-        gnc_price_ref (rv);
-    }
-    g_list_free (price_list);
-    LEAVE (" ");
-    return rv;
-}
-
 static GNCPrice *
 lookup_nearest_in_time(GNCPriceDB *db,
                        const gnc_commodity *c,
diff --git a/libgnucash/engine/gnc-pricedb.h b/libgnucash/engine/gnc-pricedb.h
index 0d769c0401..482a652180 100644
--- a/libgnucash/engine/gnc-pricedb.h
+++ b/libgnucash/engine/gnc-pricedb.h
@@ -463,22 +463,6 @@ PriceList * gnc_pricedb_get_prices(GNCPriceDB *db,
                                    const gnc_commodity *commodity,
                                    const gnc_commodity *currency);
 
-/** @brief Find the price between two commodities at a time64.
- *
- * The returned GNCPrice may be in either direction so check to ensure that its
- * value is correctly applied.
- * @param db The pricedb
- * @param commodity The first commodity
- * @param currency The second commodity
- * @param t The time64 at which to retrieve the price.
- * @return A GNCPrice or NULL if none matches.
- */
-/* NOT USED */
-GNCPrice * gnc_pricedb_lookup_at_time64(GNCPriceDB *db,
-                                        const gnc_commodity *commodity,
-                                        const gnc_commodity *currency,
-                                        time64 t);
-
 /** @brief Return the price between the two commodities on the indicated
  * day. Note that the notion of day might be distorted by changes in timezone.
  *
diff --git a/libgnucash/engine/test/utest-gnc-pricedb.c b/libgnucash/engine/test/utest-gnc-pricedb.c
index 63afea843d..25cbc67a61 100644
--- a/libgnucash/engine/test/utest-gnc-pricedb.c
+++ b/libgnucash/engine/test/utest-gnc-pricedb.c
@@ -1149,11 +1149,6 @@ test_gnc_pricedb_lookup_day_t64 (PriceDBFixture *fixture, gconstpointer pData)
     g_log_set_default_handler (hdlr, 0);
 }
 
-// Not Used
-/* gnc_pricedb_lookup_at_time64
-GNCPrice *
-gnc_pricedb_lookup_at_time64(GNCPriceDB *db,// Local: 0:0:0
-*/
 /* lookup_nearest_in_time
 static GNCPrice *
 lookup_nearest_in_time(GNCPriceDB *db,// Local: 2:0:0



Summary of changes:
 bindings/engine.i                          |  1 -
 libgnucash/engine/gnc-pricedb-p.h          |  3 --
 libgnucash/engine/gnc-pricedb.cpp          | 87 ------------------------------
 libgnucash/engine/gnc-pricedb.h            | 16 ------
 libgnucash/engine/test/utest-gnc-pricedb.c | 10 ----
 5 files changed, 117 deletions(-)



More information about the gnucash-changes mailing list