From 7c57297319bc386afaf06528778384fe58576ef9 Mon Sep 17 00:00:00 2001 From: Jon Atack Date: Thu, 22 Jul 2021 16:35:22 +0200 Subject: log: sort LogCategoriesList and LogCategoriesString alphabetically --- src/logging.cpp | 9 ++++++++- src/logging.h | 4 ++-- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/logging.cpp b/src/logging.cpp index e5187fd596..fcb46debf7 100644 --- a/src/logging.cpp +++ b/src/logging.cpp @@ -8,6 +8,8 @@ #include #include +#include +#include #include const char * const DEFAULT_DEBUGLOGFILE = "debug.log"; @@ -179,8 +181,13 @@ bool GetLogCategory(BCLog::LogFlags& flag, const std::string& str) std::vector BCLog::Logger::LogCategoriesList() const { + // Sort log categories by alphabetical order. + std::array categories; + std::copy(std::begin(LogCategories), std::end(LogCategories), categories.begin()); + std::sort(categories.begin(), categories.end(), [](auto a, auto b) { return a.category < b.category; }); + std::vector ret; - for (const CLogCategoryDesc& category_desc : LogCategories) { + for (const CLogCategoryDesc& category_desc : categories) { // Omit the special cases. if (category_desc.flag != BCLog::NONE && category_desc.flag != BCLog::ALL) { LogCategory catActive; diff --git a/src/logging.h b/src/logging.h index d04bc99268..38d73863e7 100644 --- a/src/logging.h +++ b/src/logging.h @@ -138,9 +138,9 @@ namespace BCLog { bool DisableCategory(const std::string& str); bool WillLogCategory(LogFlags category) const; - /** Returns a vector of the log categories */ + /** Returns a vector of the log categories in alphabetical order. */ std::vector LogCategoriesList() const; - /** Returns a string with the log categories */ + /** Returns a string with the log categories in alphabetical order. */ std::string LogCategoriesString() const { return Join(LogCategoriesList(), ", ", [&](const LogCategory& i) { return i.category; }); -- cgit v1.2.3