From 98d3e30a227e49d0e0216e48171781c0bdf1b40e Mon Sep 17 00:00:00 2001 From: Ivan Chikish Date: Wed, 12 Jul 2023 05:09:31 +0300 Subject: [PATCH] [Logs] Fix ptr to char array formatting --- orbis-kernel/include/orbis/utils/Logs.hpp | 12 ++++++++++++ orbis-kernel/src/sys/sys_sce.cpp | 4 ++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/orbis-kernel/include/orbis/utils/Logs.hpp b/orbis-kernel/include/orbis/utils/Logs.hpp index a9178c83d..7fb22e84e 100644 --- a/orbis-kernel/include/orbis/utils/Logs.hpp +++ b/orbis-kernel/include/orbis/utils/Logs.hpp @@ -53,6 +53,18 @@ template struct log_class_string { } }; +template struct log_class_string { + static void format(std::string &out, const void *arg) { + log_class_string::format_n(out, *(char **)arg, N); + } +}; + +template struct log_class_string { + static void format(std::string &out, const void *arg) { + log_class_string::format_n(out, *(char **)arg, N); + } +}; + template <> struct log_class_string : log_class_string {}; diff --git a/orbis-kernel/src/sys/sys_sce.cpp b/orbis-kernel/src/sys/sys_sce.cpp index 569247897..c098bcdee 100644 --- a/orbis-kernel/src/sys/sys_sce.cpp +++ b/orbis-kernel/src/sys/sys_sce.cpp @@ -297,7 +297,7 @@ orbis::SysResult orbis::sys_osem_cancel(Thread *thread /* TODO */) { orbis::SysResult orbis::sys_namedobj_create(Thread *thread, ptr name, ptr object, uint16_t type) { - ORBIS_LOG_NOTICE(__FUNCTION__, *name, object, type); + ORBIS_LOG_NOTICE(__FUNCTION__, name, object, type); char _name[32]; if (auto result = ureadString(_name, sizeof(_name), (const char *)name); result != ErrorCode{}) { @@ -305,7 +305,7 @@ orbis::SysResult orbis::sys_namedobj_create(Thread *thread, } if (type < 0x101 || type > 0x104) { if (type != 0x107) - ORBIS_LOG_ERROR(__FUNCTION__, *name, object, type); + ORBIS_LOG_ERROR(__FUNCTION__, name, object, type); } std::lock_guard lock(thread->tproc->namedObjMutex);