Fix file log for linux.

This commit is contained in:
XMRig 2017-06-23 19:37:41 +03:00
parent 95002ead7d
commit e97cd98f90
2 changed files with 9 additions and 5 deletions

View file

@ -41,7 +41,7 @@
FileLog::FileLog(const char *fileName) FileLog::FileLog(const char *fileName)
{ {
uv_fs_t req; uv_fs_t req;
m_file = uv_fs_open(uv_default_loop(), &req, fileName, O_CREAT | O_APPEND, 0644, nullptr); m_file = uv_fs_open(uv_default_loop(), &req, fileName, O_CREAT | O_APPEND | O_WRONLY, 0644, nullptr);
uv_fs_req_cleanup(&req); uv_fs_req_cleanup(&req);
} }

View file

@ -44,23 +44,27 @@ Log *Log::m_self = nullptr;
void Log::message(Log::Level level, const char* fmt, ...) void Log::message(Log::Level level, const char* fmt, ...)
{ {
va_list args; va_list args;
va_list copy;
va_start(args, fmt); va_start(args, fmt);
for (ILogBackend *backend : m_backends) { for (ILogBackend *backend : m_backends) {
backend->message(level, fmt, args); va_copy(copy, args);
backend->message(level, fmt, copy);
va_end(copy);
} }
va_end(args);
} }
void Log::text(const char* fmt, ...) void Log::text(const char* fmt, ...)
{ {
va_list args; va_list args;
va_list copy;
va_start(args, fmt); va_start(args, fmt);
for (ILogBackend *backend : m_backends) { for (ILogBackend *backend : m_backends) {
backend->text(fmt, args); va_copy(copy, args);
backend->text(fmt, copy);
va_end(copy);
} }
va_end(args); va_end(args);