From 12d82817bf32396b58c8c65645012def606680b6 Mon Sep 17 00:00:00 2001 From: Sebastian Falbesoner Date: Mon, 13 May 2024 23:25:10 +0200 Subject: [PATCH] refactor: simplify `FormatSubVersion` using strprintf/Join Rather than using std::ostringstream and manually joining the comments, use strprintf and our own `Join` helper. --- src/clientversion.cpp | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/src/clientversion.cpp b/src/clientversion.cpp index 3a5e060a39..6b9727a158 100644 --- a/src/clientversion.cpp +++ b/src/clientversion.cpp @@ -5,11 +5,11 @@ #include // IWYU pragma: keep #include +#include #include #include -#include #include #include @@ -64,19 +64,9 @@ std::string FormatFullVersion() */ std::string FormatSubVersion(const std::string& name, int nClientVersion, const std::vector& comments) { - std::ostringstream ss; - ss << "/"; - ss << name << ":" << FormatVersion(nClientVersion); - if (!comments.empty()) - { - std::vector::const_iterator it(comments.begin()); - ss << "(" << *it; - for(++it; it != comments.end(); ++it) - ss << "; " << *it; - ss << ")"; - } - ss << "/"; - return ss.str(); + std::string comments_str; + if (!comments.empty()) comments_str = strprintf("(%s)", Join(comments, "; ")); + return strprintf("/%s:%s%s/", name, FormatVersion(nClientVersion), comments_str); } std::string CopyrightHolders(const std::string& strPrefix)