From 99249a8b3b945a12ff4e7b730bdf1fdf10ac1c7f Mon Sep 17 00:00:00 2001 From: momo5502 Date: Mon, 8 Sep 2025 15:36:34 +0200 Subject: [PATCH] Fix printing --- src/analyzer/main.cpp | 11 +++++++---- src/windows-emulator/logger.cpp | 7 +++++++ src/windows-emulator/logger.hpp | 1 + 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/analyzer/main.cpp b/src/analyzer/main.cpp index aabc3804..286ce54f 100644 --- a/src/analyzer/main.cpp +++ b/src/analyzer/main.cpp @@ -289,8 +289,7 @@ namespace if (options.use_gdb) { const auto* address = "127.0.0.1:28960"; - win_emu.log.print(color::pink, "Waiting for GDB connection on %s...\n", address); - win_emu.log.disable_output(options.concise_logging || options.silent); + win_emu.log.force_print(color::pink, "Waiting for GDB connection on %s...\n", address); const auto should_stop = [&] { return signals_received > 0; }; @@ -305,7 +304,6 @@ namespace } else { - win_emu.log.disable_output(options.concise_logging || options.silent); win_emu.start(); } @@ -460,7 +458,12 @@ namespace const auto win_emu = setup_emulator(options, args); context.win_emu = win_emu.get(); - win_emu->log.log("Using emulator: %s\n", win_emu->emu().get_name().c_str()); + win_emu->log.disable_output(concise_logging || options.silent); + + if (!options.silent) + { + win_emu->log.force_print(color::gray, "Using emulator backend: %s\n", win_emu->emu().get_name().c_str()); + } std::optional tenet_tracer{}; if (options.tenet_trace) diff --git a/src/windows-emulator/logger.cpp b/src/windows-emulator/logger.cpp index fbd46ffd..747912b3 100644 --- a/src/windows-emulator/logger.cpp +++ b/src/windows-emulator/logger.cpp @@ -146,6 +146,13 @@ void logger::print(const color c, const char* message, ...) this->print_message(c, data); } +// NOLINTNEXTLINE(cert-dcl50-cpp) +void logger::force_print(const color c, const char* message, ...) +{ + format_to_string(message, data); + this->print_message(c, data, true); +} + // NOLINTNEXTLINE(cert-dcl50-cpp) void logger::info(const char* message, ...) const { diff --git a/src/windows-emulator/logger.hpp b/src/windows-emulator/logger.hpp index f91be95e..569e49c9 100644 --- a/src/windows-emulator/logger.hpp +++ b/src/windows-emulator/logger.hpp @@ -6,6 +6,7 @@ class logger : public generic_logger public: void print(color c, std::string_view message) override; void print(color c, const char* message, ...) override FORMAT_ATTRIBUTE(3, 4); + void force_print(color c, const char* message, ...) FORMAT_ATTRIBUTE(3, 4); void info(const char* message, ...) const FORMAT_ATTRIBUTE(2, 3); void warn(const char* message, ...) const FORMAT_ATTRIBUTE(2, 3); void error(const char* message, ...) const FORMAT_ATTRIBUTE(2, 3);