Skip to content
Permalink
Browse files

Merge pull request #5927

6d378d9 easylogging++: always omit ANSI codes when colour is not supported (moneromooo-monero)
  • Loading branch information...
luigi1111 committed Oct 8, 2019
2 parents a74a82c + 6d378d9 commit 577b06028c04be1b0266b74f7aa781afdc7449d0
Showing with 9 additions and 3 deletions.
  1. +8 −3 external/easylogging++/easylogging++.cc
  2. +1 −0 external/easylogging++/easylogging++.h
@@ -683,6 +683,11 @@ void LogBuilder::convertToColoredOutput(base::type::string_t* logLine, Level lev
}
}

void LogBuilder::setColor(Color color, bool bright) {
if (m_termSupportsColor)
el::base::utils::setConsoleColor(color, bright);
}

// Logger

Logger::Logger(const std::string& id, base::LogStreamsReferenceMap* logStreamsReference) :
@@ -2496,11 +2501,11 @@ void DefaultLogDispatchCallback::dispatch(base::type::string_t&& rawLinePrefix,
if (m_data->logMessage()->logger()->m_typedConfigurations->toStandardOutput(m_data->logMessage()->level())) {
const el::Level level = m_data->logMessage()->level();
const el::Color color = m_data->logMessage()->color();
el::base::utils::setConsoleColor(el::base::utils::colorFromLevel(level), false);
m_data->logMessage()->logger()->logBuilder()->setColor(el::base::utils::colorFromLevel(level), false);
ELPP_COUT << rawLinePrefix;
el::base::utils::setConsoleColor(color == el::Color::Default ? el::base::utils::colorFromLevel(level): color, color != el::Color::Default);
m_data->logMessage()->logger()->logBuilder()->setColor(color == el::Color::Default ? el::base::utils::colorFromLevel(level): color, color != el::Color::Default);
ELPP_COUT << rawLinePayload;
el::base::utils::setConsoleColor(el::Color::Default, false);
m_data->logMessage()->logger()->logBuilder()->setColor(el::Color::Default, false);
ELPP_COUT << std::flush;
}
}
@@ -2235,6 +2235,7 @@ class LogBuilder : base::NoCopy {
}
virtual base::type::string_t build(const LogMessage* logMessage, bool appendNewLine) const = 0;
void convertToColoredOutput(base::type::string_t* logLine, Level level, Color color);
void setColor(Color color, bool bright);
private:
bool m_termSupportsColor;
friend class el::base::DefaultLogDispatchCallback;

0 comments on commit 577b060

Please sign in to comment.
You can’t perform that action at this time.