diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/shared/Logging/Appender.h | 2 | ||||
-rw-r--r-- | src/server/shared/Logging/AppenderFile.cpp | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/server/shared/Logging/Appender.h b/src/server/shared/Logging/Appender.h index 956776c500b..4b5b4edb0ac 100644 --- a/src/server/shared/Logging/Appender.h +++ b/src/server/shared/Logging/Appender.h @@ -140,7 +140,7 @@ class Appender static const char* getLogFilterTypeString(LogFilterType type); private: - virtual void _write(LogMessage& /*message*/) {}; + virtual void _write(LogMessage& /*message*/) = 0; uint8 id; std::string name; diff --git a/src/server/shared/Logging/AppenderFile.cpp b/src/server/shared/Logging/AppenderFile.cpp index d66771b9055..01a2f34baa7 100644 --- a/src/server/shared/Logging/AppenderFile.cpp +++ b/src/server/shared/Logging/AppenderFile.cpp @@ -26,8 +26,8 @@ AppenderFile::AppenderFile(uint8 id, std::string const& name, LogLevel level, co { dynamicName = std::string::npos != filename.find("%u"); backup = _flags & APPENDER_FLAGS_MAKE_FILE_BACKUP; - if (!dynamicName) - logfile = OpenFile(_filename, _mode, backup); + + logfile = !dynamicName ? OpenFile(_filename, _mode, backup) : NULL; } AppenderFile::~AppenderFile() @@ -54,7 +54,10 @@ void AppenderFile::_write(LogMessage& message) fflush(logfile); if (dynamicName) + { fclose(logfile); + logfile = NULL; + } } } |