From 61fe756acdd2a7daec857d1f4c0dbbe8c0d50bd7 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Sun, 18 May 2025 16:19:50 -0700 Subject: [PATCH] Bug 799572 - Return proper status code when Finance::Quote errors... during price quote retrieval via CLI. --- gnucash/gnucash-cli.cpp | 4 +--- gnucash/gnucash-commands.cpp | 6 +++++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/gnucash/gnucash-cli.cpp b/gnucash/gnucash-cli.cpp index 23a8475fc9..157e23ac03 100644 --- a/gnucash/gnucash-cli.cpp +++ b/gnucash/gnucash-cli.cpp @@ -232,7 +232,5 @@ main(int argc, char **argv) boost::nowide::args a(argc, argv); // Fix arguments - make them UTF-8 #endif application.parse_command_line (argc, argv); - application.start (argc, argv); - - return 0; + return application.start (argc, argv); } diff --git a/gnucash/gnucash-commands.cpp b/gnucash/gnucash-commands.cpp index db4dbda55b..c827265307 100644 --- a/gnucash/gnucash-commands.cpp +++ b/gnucash/gnucash-commands.cpp @@ -342,6 +342,7 @@ Gnucash::check_finance_quote (void) int Gnucash::add_quotes (const bo_str& uri) { + int rv{}; gnc_prefs_init (); qof_event_suspend(); @@ -365,7 +366,10 @@ Gnucash::add_quotes (const bo_str& uri) gnc_quote_source_set_fq_installed (quotes.version().c_str(), quote_sources); quotes.fetch(qof_session_get_book(session)); if (quotes.had_failures()) + { std::cerr << quotes.report_failures() << std::endl; + rv = 2; + } } catch (const GncQuoteException& err) { @@ -377,7 +381,7 @@ Gnucash::add_quotes (const bo_str& uri) qof_session_destroy(session); qof_event_resume(); - return 0; + return rv; } int