From aec257401802665f513fb40e4f4915d64a16c247 Mon Sep 17 00:00:00 2001 From: Ivan Chikish Date: Sat, 8 Jul 2023 17:39:59 +0300 Subject: [PATCH] [Logs] Don't read nullptr string --- orbis-kernel/src/utils/Logs.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/orbis-kernel/src/utils/Logs.cpp b/orbis-kernel/src/utils/Logs.cpp index 8e663cd67..4d464983e 100644 --- a/orbis-kernel/src/utils/Logs.cpp +++ b/orbis-kernel/src/utils/Logs.cpp @@ -19,7 +19,15 @@ void log_class_string::format(std::string &out, const void *arg) { } void log_class_string::format(std::string &out, const void *arg) { - out += *reinterpret_cast(arg); + const char* ptr = *reinterpret_cast(arg); + const auto addr = reinterpret_cast(ptr); + if (addr < 0x10000 || addr > 0x7fff'ffff'ffff) { + out += "{{{{{BAD_ADDR:"; + append_hex(out, addr); + out += "}}}}}"; + return; + } + out += ptr; } template <>