From 00640f9ded4967ee772cc275e25bfe3cae2ca7ad Mon Sep 17 00:00:00 2001 From: Geert Janssens Date: Fri, 16 Feb 2024 10:47:03 +0100 Subject: [PATCH] Replace naked for loops with C++ algorithms --- libgnucash/engine/gnc-commodity.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/libgnucash/engine/gnc-commodity.cpp b/libgnucash/engine/gnc-commodity.cpp index e8cf95ef92..e2c6010559 100644 --- a/libgnucash/engine/gnc-commodity.cpp +++ b/libgnucash/engine/gnc-commodity.cpp @@ -318,10 +318,13 @@ gnc_quote_source_fq_version (void) static QuoteSourceVec& get_quote_source_from_type (QuoteSourceType type) { - for (const auto& [s_type, sources] : quote_sources_map) - if (type == s_type) - return sources; + auto quote_sources_it = std::find_if (quote_sources_map.begin(), quote_sources_map.end(), + [type] (const auto& qs) { return type == qs.first; }); + if (quote_sources_it != quote_sources_map.end()) + return quote_sources_it->second; + + PWARN ("Invalid Quote Source %d, returning new_quote_sources", type); return new_quote_sources; } @@ -386,11 +389,11 @@ gnc_quote_source_lookup_by_internal(const char * name) for (const auto& [_, sources] : quote_sources_map) { - for (const auto& source : sources) - { - if (g_strcmp0(name, source.get_internal_name()) == 0) - return (gnc_quote_source*)&source; - } + auto source_it = std::find_if (sources.begin(), sources.end(), + [name] (const auto& qs) + { return (g_strcmp0(name, qs.get_internal_name()) == 0); }); + if (source_it != sources.end()) + return &(*source_it); } DEBUG("gnc_quote_source_lookup_by_internal: Unknown source %s", name);