Payment dialogs sort to beginning of day and do not honor NUM field for
custom sorting.
Do a two-step, first retrieving a GDate from the date_edit then use
gdate_to_timespec to convert it to a time64: gdate_to_timespec calls
gnc_dmy2timespec_neutral while gnc_date_edit_get_date_ts gets a
begining-of-the-day time.
Price and that already exists in the Price DB
Should have crashed regardless: The pricedb takes ownership of the
price object and unreffing it is going to cause trouble eventually.
tock Split Assistant crashes GnuCash if you enter a New Price and that
already exists in the Price DB
While new files will use CURRENCY to indicate a commodity is a currency,
older files (including our ancient test files) are still using
ISO4217. So we need to expect both values in the xml file tests.
This is different from file loading (which will automatically map
ISO4217 to CURRENCY) and file saving (which will from now on always
write CURRENCY).
Relax the account type change restrictions again. In the new implementation
account types can't be changed for an account with splits:
- if the change woud force a commodity change (to/from normal accounts from/to stock related accounts)
- for immutable accounts
At the time of this commit the following account types are considered immutable:
- Accounts Receivable
- Accounts Payable
- Trading accounts
There is now a separate GNC_COMMODITY_NS_ISO_GUI label to be used
everywhere the users needs to read 'Currency namespace'. It's currently
set to 'Currencies' and can be translated. It may change in to future
to better describe this namespace is restricted to ISO4217 defined
currencies as opposed to all the non-formal currencies in vogue today
(like bitcoin and friends).
Fixes a bug reported on the mailing list wherein a date of 0000-00-00
in a MySql database would crash GnuCash. Such dates may come from a bad
conversion of 1970-01-01 or from a crash.
This commit will further improve the styling of the table element used for foreign
currencies in any report with foreign currencies or stocks. Adds non-breaking space
between foreign currency/stock and report currency.
Null tip_list after freeing it the first time to prevent double-free,
then don't iterate over it if contents is NULL. Don't even try to open
dialog if tip_count < 1. Protect from dereferencing a NULL tip_list in
gnc_new_tip_number.
The Python API incorectly had GncCommodityTable.get_namespaces() defined
as a list of GncCommodityNamespace over the correct list of String. This
fixes the issue and adds a test for GncCommodityTable.get_namespaces()
and GncCommodityTable.get_namespaces_list().
Note: This is not a direct fix as I could not get SWIG to detect/convert
"GList *" to a "gchar *" to a Python str list.
Bug 776396 - Foreign currency reports, amounts are not aligned correctly
This commit will improve the styling of the table element used
for foreign currencies in the Balance sheet report so they
end up aligned with the other currencies.
Note the operands are const GncDate& because the GncDate has no copy
constructor/assigment operator (any other definition would fail
when used with variables of type boost::optional<GncDate>)
This required a couple of tweaks to the tests because:
- the invalid date returned for impossible conversions is different between the old implementation and the cpp edition
- unhandled glib warnings caused the tests to abort
This double free happened after the introduction of a class variable (static member variable
to GndDate and the test compiling in gnc-datetime.cpp *and* at the same time linking to
gnc-qof. This apparently threw off internal memory management. Removing either of linking to
gnc-qof or compiling in the source file solved it.
Credits go to John Ralls for debugging this.