From 6d2b5782fd26b60ad067570838681caa431e0b66 Mon Sep 17 00:00:00 2001 From: Matteo Pignataro <matteo.pignataro@skywarder.eu> Date: Sun, 23 Apr 2023 19:46:16 +0200 Subject: [PATCH] [File-Name] Substituted "::" in the filename with "_" to make the file cross platform compatible --- src/shared/logger/Deserializer.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/shared/logger/Deserializer.h b/src/shared/logger/Deserializer.h index ce3009c4f..e22bf5fe2 100644 --- a/src/shared/logger/Deserializer.h +++ b/src/shared/logger/Deserializer.h @@ -30,6 +30,7 @@ #include <iostream> #include <limits> #include <ostream> +#include <regex> #include <string> #include <vector> @@ -130,8 +131,13 @@ void Deserializer::registerType() template <typename T> void Deserializer::printType(T& t, std::string path, std::string prefix) { - std::string demangledTypeName = tscpp::demangle(typeid(T).name()); static std::ofstream* stream; + std::string demangledTypeName = tscpp::demangle(typeid(T).name()); + + // Replace the :: with the _ in order to make the format string cross + // platform compatible + demangledTypeName = + std::regex_replace(demangledTypeName, std::regex("::"), "_"); try { -- GitLab