From 36b9e969c2751c790c8db034a4abe61aea2c05ce Mon Sep 17 00:00:00 2001 From: DH Date: Sun, 21 Sep 2025 06:55:54 +0300 Subject: [PATCH] logs: fix debug build, do not print literal value --- orbis-kernel/src/utils/Logs.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/orbis-kernel/src/utils/Logs.cpp b/orbis-kernel/src/utils/Logs.cpp index b2abb09fc..685d0bb51 100644 --- a/orbis-kernel/src/utils/Logs.cpp +++ b/orbis-kernel/src/utils/Logs.cpp @@ -489,10 +489,17 @@ void _orbis_log_print(LogLevel lvl, std::string_view msg, for (std::size_t i = 0; i < args_count; i++) { if (i) text += ", "; - names.remove_prefix(names.find_first_not_of(" \t\n\r")); - std::string_view name = names.substr(0, names.find_first_of(",")); - names.remove_prefix(name.size() + 1); + names.remove_prefix(std::min(names.find_first_not_of(" \t\n\r"), names.length())); + std::string_view name = names.substr(0, names.find_first_of(',')); + names.remove_prefix(std::min(name.size() + 1, names.size())); text += name; + + if (!name.empty() && + (name[0] == '"' || (name[0] >= '0' && name[0] <= '9'))) { + // skip literals + continue; + } + text += "="; sup[i].log_string(text, args[i]); }