aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2023-05-16 13:33:16 +0200
committerGitHub <[email protected]>2023-05-16 13:33:16 +0200
commit93b7eac6570f38e1d0d25da893e184ecbbe05fdf (patch)
tree87c05d944b32871d6a0a326ccf59373c5afe3d18 /src
parentAdd `--gc-projectstore-duration-seconds` option (#281) (diff)
downloadzen-93b7eac6570f38e1d0d25da893e184ecbbe05fdf.tar.xz
zen-93b7eac6570f38e1d0d25da893e184ecbbe05fdf.zip
Moved EnableVTMode function into zencore (#311)
Diffstat (limited to 'src')
-rw-r--r--src/zen/zen.cpp17
-rw-r--r--src/zencore/include/zencore/logging.h18
-rw-r--r--src/zencore/logging.cpp27
-rw-r--r--src/zenserver/diag/logging.cpp29
4 files changed, 38 insertions, 53 deletions
diff --git a/src/zen/zen.cpp b/src/zen/zen.cpp
index d32b630fe..3cb5bec47 100644
--- a/src/zen/zen.cpp
+++ b/src/zen/zen.cpp
@@ -143,19 +143,7 @@ public:
ZEN_UNUSED(GlobalOptions);
// Set output mode to handle virtual terminal sequences
-# if ZEN_PLATFORM_WINDOWS
- HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
- if (hOut == INVALID_HANDLE_VALUE)
- return GetLastError();
-
- DWORD dwMode = 0;
- if (!GetConsoleMode(hOut, &dwMode))
- return GetLastError();
-
- dwMode |= ENABLE_VIRTUAL_TERMINAL_PROCESSING;
- if (!SetConsoleMode(hOut, dwMode))
- return GetLastError();
-# endif // ZEN_PLATFORM_WINDOWS
+ zen::logging::EnableVTMode();
return ZEN_RUN_TESTS(argc, argv);
}
@@ -184,6 +172,9 @@ main(int argc, char** argv)
zen::logging::InitializeLogging();
zen::MaximizeOpenFileCount();
+ // Set output mode to handle virtual terminal sequences
+ zen::logging::EnableVTMode();
+
//////////////////////////////////////////////////////////////////////////
auto _ = zen::MakeGuard([] { spdlog::shutdown(); });
diff --git a/src/zencore/include/zencore/logging.h b/src/zencore/include/zencore/logging.h
index 6a8fd7254..462f2b4e0 100644
--- a/src/zencore/include/zencore/logging.h
+++ b/src/zencore/include/zencore/logging.h
@@ -23,6 +23,8 @@ void SetErrorLog(std::shared_ptr<spdlog::logger>&& NewErrorLogger);
void InitializeLogging();
void ShutdownLogging();
+bool EnableVTMode();
+
} // namespace zen::logging
namespace zen {
@@ -91,13 +93,9 @@ LogIsErrorLevel(int level)
} Category;
#define ZEN_LOG_TRACE(Category, fmtstr, ...) ZEN_LOG(Category.Logger(), spdlog::level::trace, fmtstr##sv, ##__VA_ARGS__)
-
#define ZEN_LOG_DEBUG(Category, fmtstr, ...) ZEN_LOG(Category.Logger(), spdlog::level::debug, fmtstr##sv, ##__VA_ARGS__)
-
-#define ZEN_LOG_INFO(Category, fmtstr, ...) ZEN_LOG(Category.Logger(), spdlog::level::info, fmtstr##sv, ##__VA_ARGS__)
-
-#define ZEN_LOG_WARN(Category, fmtstr, ...) ZEN_LOG(Category.Logger(), spdlog::level::warn, fmtstr##sv, ##__VA_ARGS__)
-
+#define ZEN_LOG_INFO(Category, fmtstr, ...) ZEN_LOG(Category.Logger(), spdlog::level::info, fmtstr##sv, ##__VA_ARGS__)
+#define ZEN_LOG_WARN(Category, fmtstr, ...) ZEN_LOG(Category.Logger(), spdlog::level::warn, fmtstr##sv, ##__VA_ARGS__)
#define ZEN_LOG_ERROR(Category, fmtstr, ...) \
ZEN_LOG_WITH_LOCATION(Category.Logger(), \
spdlog::source_loc(__FILE__, __LINE__, SPDLOG_FUNCTION), \
@@ -115,13 +113,9 @@ LogIsErrorLevel(int level)
// Helper macros for logging
#define ZEN_TRACE(fmtstr, ...) ZEN_LOG(Log(), spdlog::level::trace, fmtstr##sv, ##__VA_ARGS__)
-
#define ZEN_DEBUG(fmtstr, ...) ZEN_LOG(Log(), spdlog::level::debug, fmtstr##sv, ##__VA_ARGS__)
-
-#define ZEN_INFO(fmtstr, ...) ZEN_LOG(Log(), spdlog::level::info, fmtstr##sv, ##__VA_ARGS__)
-
-#define ZEN_WARN(fmtstr, ...) ZEN_LOG(Log(), spdlog::level::warn, fmtstr##sv, ##__VA_ARGS__)
-
+#define ZEN_INFO(fmtstr, ...) ZEN_LOG(Log(), spdlog::level::info, fmtstr##sv, ##__VA_ARGS__)
+#define ZEN_WARN(fmtstr, ...) ZEN_LOG(Log(), spdlog::level::warn, fmtstr##sv, ##__VA_ARGS__)
#define ZEN_ERROR(fmtstr, ...) \
ZEN_LOG_WITH_LOCATION(Log(), spdlog::source_loc(__FILE__, __LINE__, SPDLOG_FUNCTION), spdlog::level::err, fmtstr##sv, ##__VA_ARGS__)
diff --git a/src/zencore/logging.cpp b/src/zencore/logging.cpp
index 33e81825c..07b379cba 100644
--- a/src/zencore/logging.cpp
+++ b/src/zencore/logging.cpp
@@ -85,6 +85,33 @@ ShutdownLogging()
spdlog::shutdown();
}
+bool
+EnableVTMode()
+{
+#if ZEN_PLATFORM_WINDOWS
+ // Set output mode to handle virtual terminal sequences
+ HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
+ if (hOut == INVALID_HANDLE_VALUE)
+ {
+ return false;
+ }
+
+ DWORD dwMode = 0;
+ if (!GetConsoleMode(hOut, &dwMode))
+ {
+ return false;
+ }
+
+ dwMode |= ENABLE_VIRTUAL_TERMINAL_PROCESSING;
+ if (!SetConsoleMode(hOut, dwMode))
+ {
+ return false;
+ }
+#endif
+
+ return true;
+}
+
} // namespace zen::logging
namespace zen {
diff --git a/src/zenserver/diag/logging.cpp b/src/zenserver/diag/logging.cpp
index e6192c7c0..13270b41d 100644
--- a/src/zenserver/diag/logging.cpp
+++ b/src/zenserver/diag/logging.cpp
@@ -317,40 +317,13 @@ private:
std::string m_LogId;
};
-bool
-EnableVTMode()
-{
-#if ZEN_PLATFORM_WINDOWS
- // Set output mode to handle virtual terminal sequences
- HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
- if (hOut == INVALID_HANDLE_VALUE)
- {
- return false;
- }
-
- DWORD dwMode = 0;
- if (!GetConsoleMode(hOut, &dwMode))
- {
- return false;
- }
-
- dwMode |= ENABLE_VIRTUAL_TERMINAL_PROCESSING;
- if (!SetConsoleMode(hOut, dwMode))
- {
- return false;
- }
-#endif
-
- return true;
-}
-
} // namespace logging
void
InitializeLogging(const ZenServerOptions& GlobalOptions)
{
zen::logging::InitializeLogging();
- logging::EnableVTMode();
+ zen::logging::EnableVTMode();
bool IsAsync = true;
spdlog::level::level_enum LogLevel = spdlog::level::info;