Fix FileLog and removed Mem leak in RemoteLog

This commit is contained in:
BenDr0id 2018-06-20 09:43:19 +02:00
parent bb1fba37a6
commit 7897f8f645
3 changed files with 8 additions and 3 deletions

View file

@ -38,6 +38,7 @@ NetworkState::NetworkState() :
failures(0),
rejected(0),
total(0),
powVariant(POW_AUTODETECT),
m_active(false)
{
memset(pool, 0, sizeof(pool));

View file

@ -56,7 +56,7 @@ void FileLog::message(int level, const char* fmt, va_list args)
localtime_r(&now, &stime);
# endif
char *buf = new char[512];
auto *buf = new char[512];
int size = snprintf(buf, 23, "[%d-%02d-%02d %02d:%02d:%02d] ",
stime.tm_year + 1900,
stime.tm_mon + 1,
@ -70,7 +70,9 @@ void FileLog::message(int level, const char* fmt, va_list args)
std::string row = std::regex_replace(std::string(buf, size+1), std::regex("\x1B\\[[0-9;]*[a-zA-Z]"), "");
write(const_cast<char*>(row.c_str()), size + 1);
memcpy(buf, row.c_str(), row.length());
write(buf, row.length());
}

View file

@ -44,7 +44,7 @@ void RemoteLog::message(int level, const char* fmt, va_list args)
localtime_r(&now, &stime);
# endif
char *buf = new char[512];
auto *buf = new char[512];
int size = snprintf(buf, 23, "[%d-%02d-%02d %02d:%02d:%02d] ",
stime.tm_year + 1900,
stime.tm_mon + 1,
@ -63,6 +63,8 @@ void RemoteLog::message(int level, const char* fmt, va_list args)
std::string row = std::regex_replace(std::string(buf, size+1), std::regex("\x1B\\[[0-9;]*[a-zA-Z]"), "");
rows_.push_back(row);
delete[](buf);
}