diff options
author | Shauren <shauren.trinity@gmail.com> | 2024-07-16 16:31:40 +0200 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2024-07-18 22:34:07 +0200 |
commit | fc27c71dee3e0a4a70a52d0a094325a977d298f2 (patch) | |
tree | 15bf67e63dcaef4511190fc9732f73d8dab4342d /src/common/Logging/AppenderFile.cpp | |
parent | c12f669fc5050017d98ec57c8a45e575154a5edb (diff) |
Core/Logging: Minor internal refactor
* Avoid formatting to output with fprintf
* Use vector instead of unordered_map to store appenders in Logger
(cherry picked from commit 81bec6954fa6640e2942d836a856e6bc9d421bce)
Diffstat (limited to 'src/common/Logging/AppenderFile.cpp')
-rw-r--r-- | src/common/Logging/AppenderFile.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/common/Logging/AppenderFile.cpp b/src/common/Logging/AppenderFile.cpp index cf1aa0b7013..2a8db9b4e06 100644 --- a/src/common/Logging/AppenderFile.cpp +++ b/src/common/Logging/AppenderFile.cpp @@ -21,8 +21,8 @@ #include "StringConvert.h" #include <algorithm> -AppenderFile::AppenderFile(uint8 id, std::string const& name, LogLevel level, AppenderFlags flags, std::vector<std::string_view> const& args) : - Appender(id, name, level, flags), +AppenderFile::AppenderFile(uint8 id, std::string name, LogLevel level, AppenderFlags flags, std::vector<std::string_view> const& args) : + Appender(id, std::move(name), level, flags), logfile(nullptr), _logDir(sLog->GetLogsDir()), _maxFileSize(0), @@ -78,7 +78,9 @@ void AppenderFile::_write(LogMessage const* message) FILE* file = OpenFile(namebuf, "a", _backup || exceedMaxSize); if (!file) return; - fprintf(file, "%s%s\n", message->prefix.c_str(), message->text.c_str()); + fwrite(message->prefix.c_str(), 1, message->prefix.length(), file); + fwrite(message->text.c_str(), 1, message->text.length(), file); + fwrite("\n", 1, 1, file); fflush(file); _fileSize += uint64(message->Size()); fclose(file); @@ -90,7 +92,9 @@ void AppenderFile::_write(LogMessage const* message) if (!logfile) return; - fprintf(logfile, "%s%s\n", message->prefix.c_str(), message->text.c_str()); + fwrite(message->prefix.c_str(), 1, message->prefix.length(), logfile); + fwrite(message->text.c_str(), 1, message->text.length(), logfile); + fwrite("\n", 1, 1, logfile); fflush(logfile); _fileSize += uint64(message->Size()); } |