Skip to content

Commit

Permalink
[account.cpp] log warnings if acct==nullptr instead of returning early
Browse files Browse the repository at this point in the history
calling these functions with acct==nullptr should indicate bad code.
  • Loading branch information
christopherlam committed Oct 14, 2024
1 parent 7383fb5 commit 0a6fcb8
Showing 1 changed file with 23 additions and 1 deletion.
24 changes: 23 additions & 1 deletion libgnucash/engine/Account.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2583,24 +2583,28 @@ get_kvp_int64_path (const Account *acc, const Path& path)
void
xaccAccountSetColor (Account *acc, const char *str)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
set_kvp_string_path (acc, {"color"}, str);
}

void
xaccAccountSetFilter (Account *acc, const char *str)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
set_kvp_string_path (acc, {"filter"}, str);
}

void
xaccAccountSetSortOrder (Account *acc, const char *str)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
set_kvp_string_path (acc, {"sort-order"}, str);
}

void
xaccAccountSetSortReversed (Account *acc, gboolean sortreversed)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
set_kvp_boolean_path (acc, {"sort-reversed"}, sortreversed);
}

Expand All @@ -2625,6 +2629,7 @@ qofAccountSetParent (Account *acc, QofInstance *parent)
void
xaccAccountSetNotes (Account *acc, const char *str)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
set_kvp_string_path (acc, {"notes"}, str);
}

Expand Down Expand Up @@ -3904,7 +3909,8 @@ xaccAccountGetNoclosingBalanceChangeInCurrencyForPeriod (Account *acc, time64 t1
const SplitsVec
xaccAccountGetSplits (const Account *account)
{
return GNC_IS_ACCOUNT(account) ? GET_PRIVATE(account)->splits : SplitsVec{};
g_return_val_if_fail (GNC_IS_ACCOUNT(account), SplitsVec{});
return GET_PRIVATE(account)->splits;
}

SplitList *
Expand All @@ -3919,6 +3925,7 @@ xaccAccountGetSplitList (const Account *acc)
size_t
xaccAccountGetSplitsSize (const Account *account)
{
g_return_val_if_fail (GNC_IS_ACCOUNT(account), 0);
return GNC_IS_ACCOUNT(account) ? GET_PRIVATE(account)->splits.size() : 0;
}

Expand Down Expand Up @@ -3994,12 +4001,14 @@ xaccAccountForEachLot(const Account *acc,
gboolean
xaccAccountGetTaxRelated (const Account *acc)
{
g_return_val_if_fail(GNC_IS_ACCOUNT(acc), false);
return get_kvp_boolean_path(acc, {"tax-related"});
}

void
xaccAccountSetTaxRelated (Account *acc, gboolean tax_related)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
set_kvp_boolean_path(acc, {"tax-related"}, tax_related);
}

Expand All @@ -4013,6 +4022,7 @@ xaccAccountGetTaxUSCode (const Account *acc)
void
xaccAccountSetTaxUSCode (Account *acc, const char *code)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
set_kvp_string_path (acc, {"tax-US", "code"}, code);
}

Expand All @@ -4026,6 +4036,7 @@ xaccAccountGetTaxUSPayerNameSource (const Account *acc)
void
xaccAccountSetTaxUSPayerNameSource (Account *acc, const char *source)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
set_kvp_string_path (acc, {"tax-US", "payer-name-source"}, source);
}

Expand Down Expand Up @@ -4078,30 +4089,35 @@ const char *gnc_account_get_credit_string (GNCAccountType acct_type)
gboolean
xaccAccountGetPlaceholder (const Account *acc)
{
g_return_val_if_fail (GNC_IS_ACCOUNT(acc), false);
return get_kvp_boolean_path(acc, {"placeholder"});
}

void
xaccAccountSetPlaceholder (Account *acc, gboolean val)
{
g_return_if_fail (GNC_IS_ACCOUNT(acc));
set_kvp_boolean_path(acc, {"placeholder"}, val);
}

gboolean
xaccAccountGetAppendText (const Account *acc)
{
g_return_val_if_fail (GNC_IS_ACCOUNT(acc), false);
return get_kvp_boolean_path(acc, {"import-append-text"});
}

void
xaccAccountSetAppendText (Account *acc, gboolean val)
{
g_return_if_fail (GNC_IS_ACCOUNT(acc));
set_kvp_boolean_path(acc, {"import-append-text"}, val);
}

gboolean
xaccAccountGetIsOpeningBalance (const Account *acc)
{
g_return_val_if_fail (GNC_IS_ACCOUNT(acc), false);
if (GET_PRIVATE(acc)->type != ACCT_TYPE_EQUITY)
return false;

Expand All @@ -4111,6 +4127,7 @@ xaccAccountGetIsOpeningBalance (const Account *acc)
void
xaccAccountSetIsOpeningBalance (Account *acc, gboolean val)
{
g_return_if_fail (GNC_IS_ACCOUNT(acc));
if (GET_PRIVATE(acc)->type != ACCT_TYPE_EQUITY)
return;
set_kvp_string_path(acc, {"equity-type"}, val ? "opening-balance" : nullptr);
Expand All @@ -4132,12 +4149,14 @@ xaccAccountGetDescendantPlaceholder (const Account *acc)
gboolean
xaccAccountGetAutoInterest (const Account *acc)
{
g_return_val_if_fail(GNC_IS_ACCOUNT(acc), false);
return get_kvp_boolean_path (acc, {KEY_RECONCILE_INFO, "auto-interest-transfer"});
}

void
xaccAccountSetAutoInterest (Account *acc, gboolean val)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
set_kvp_boolean_path (acc, {KEY_RECONCILE_INFO, "auto-interest-transfer"}, val);
}

Expand All @@ -4147,12 +4166,14 @@ xaccAccountSetAutoInterest (Account *acc, gboolean val)
gboolean
xaccAccountGetHidden (const Account *acc)
{
g_return_val_if_fail(GNC_IS_ACCOUNT(acc), false);
return get_kvp_boolean_path (acc, {"hidden"});
}

void
xaccAccountSetHidden (Account *acc, gboolean val)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
set_kvp_boolean_path (acc, {"hidden"}, val);
}

Expand Down Expand Up @@ -5532,6 +5553,7 @@ gnc_account_imap_find_account_bayes (Account *acc, GList *tokens)
static void
change_imap_entry (Account *acc, std::string const & path, int64_t token_count)
{
g_return_if_fail(GNC_IS_ACCOUNT(acc));
PINFO("Source Account is '%s', Count is '%" G_GINT64_FORMAT "'",
xaccAccountGetName (acc), token_count);

Expand Down

0 comments on commit 0a6fcb8

Please sign in to comment.