fix(logger): 修复关闭日志时重复记录和资源释放顺序问题

修复 Logger::shutdown 中的逻辑错误,避免在未初始化时执行操作。
将资源释放和清理操作移至条件判断之后,确保在记录关闭完成信息前正确释放 spdlog 资源。
This commit is contained in:
ChestnutYueyue 2026-03-16 18:55:24 +08:00
parent d90fad8f5a
commit 95d9e7c5c4
1 changed files with 9 additions and 8 deletions

View File

@ -76,16 +76,17 @@ void Logger::init() {
* spdlog Nintendo Switch * spdlog Nintendo Switch
*/ */
void Logger::shutdown() { void Logger::shutdown() {
if (initialized_) { if (!initialized_) {
log(LogLevel::Info, "日志系统正在关闭"); return;
spdlog::shutdown();
logger_.reset();
#ifdef __SWITCH__
consoleExit(NULL);
#endif
} }
initialized_ = false;
log(LogLevel::Info, "日志系统关闭完成"); log(LogLevel::Info, "日志系统关闭完成");
spdlog::shutdown();
logger_.reset();
#ifdef __SWITCH__
consoleExit(NULL);
#endif
initialized_ = false;
} }
/** /**