diff options
| author | 2026-05-20 17:49:02 +0100 | |
|---|---|---|
| committer | 2026-05-20 17:49:02 +0100 | |
| commit | 5c9442d7db6e53cac73166e97cc8a7779e283acc (patch) | |
| tree | 86a6d53e9abd32004a4654a944c6bba0f491b331 /modules/spanningtree/override_map.cpp | |
| parent | Merge branch 'insp4' into master. (diff) | |
Add a helper function for calculating a percentage.
Diffstat (limited to 'modules/spanningtree/override_map.cpp')
| -rw-r--r-- | modules/spanningtree/override_map.cpp | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/modules/spanningtree/override_map.cpp b/modules/spanningtree/override_map.cpp index aa3b542e6..f3031473d 100644 --- a/modules/spanningtree/override_map.cpp +++ b/modules/spanningtree/override_map.cpp @@ -27,6 +27,7 @@ #include "inspircd.h" #include "timeutils.h" +#include "utility/numeric.h" #include "main.h" #include "utils.h" @@ -70,15 +71,6 @@ static void GetDepthAndLen(TreeServer* current, unsigned int depth, unsigned int static std::vector<std::string> GetMap(User* user, TreeServer* current, size_t max_len, size_t max_version_len, unsigned int depth) { - float percent = 0; - - const UserMap& users = ServerInstance->Users.GetUsers(); - if (!users.empty()) - { - // If there are no users, WHO THE HELL DID THE /MAP?!?!?! - percent = current->UserCount * 100.0 / users.size(); - } - std::string buffer = current->GetName(); if (user->IsOper()) { @@ -95,6 +87,7 @@ static std::vector<std::string> GetMap(User* user, TreeServer* current, size_t m // Pad with spaces until its at max len, max_len must always be >= my names length buffer.append(max_len - current->GetName().length(), ' '); + const auto percent = insp::percentage(current->UserCount, ServerInstance->Users.GetUsers().size()); buffer += FMT::format("{:5} [{:5.2f}%]", current->UserCount, percent); if (user->IsOper()) |
