aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/shared/Logging/Appender.h2
-rw-r--r--src/server/shared/Logging/AppenderFile.cpp5
2 files changed, 5 insertions, 2 deletions
diff --git a/src/server/shared/Logging/Appender.h b/src/server/shared/Logging/Appender.h
index 7d7375a1edb..332edbf170c 100644
--- a/src/server/shared/Logging/Appender.h
+++ b/src/server/shared/Logging/Appender.h
@@ -139,7 +139,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 d47a7c4028d..01a2f34baa7 100644
--- a/src/server/shared/Logging/AppenderFile.cpp
+++ b/src/server/shared/Logging/AppenderFile.cpp
@@ -26,7 +26,7 @@ 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;
-
+
logfile = !dynamicName ? OpenFile(_filename, _mode, backup) : NULL;
}
@@ -54,7 +54,10 @@ void AppenderFile::_write(LogMessage& message)
fflush(logfile);
if (dynamicName)
+ {
fclose(logfile);
+ logfile = NULL;
+ }
}
}