Loading base/include/android-base/logging.h +0 −1 Original line number Diff line number Diff line Loading @@ -115,7 +115,6 @@ void StdioLogger(LogId, LogSeverity, const char*, const char*, unsigned int, con void DefaultAborter(const char* abort_message); std::string GetDefaultTag(); void SetDefaultTag(const std::string& tag); // We expose this even though it is the default because a user that wants to Loading base/liblog_symbols.cpp +2 −0 Original line number Diff line number Diff line Loading @@ -50,6 +50,7 @@ const std::optional<LibLogFunctions>& GetLibLogFunctions() { DLSYM(__android_log_default_aborter) DLSYM(__android_log_set_minimum_priority); DLSYM(__android_log_get_minimum_priority); DLSYM(__android_log_set_default_tag); #undef DLSYM return real_liblog_functions; Loading @@ -72,6 +73,7 @@ const std::optional<LibLogFunctions>& GetLibLogFunctions() { .__android_log_default_aborter = __android_log_default_aborter, .__android_log_set_minimum_priority = __android_log_set_minimum_priority, .__android_log_get_minimum_priority = __android_log_get_minimum_priority, .__android_log_set_default_tag = __android_log_set_default_tag, }; }(); return liblog_functions; Loading base/liblog_symbols.h +1 −0 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ struct LibLogFunctions { void (*__android_log_default_aborter)(const char* abort_message); int (*__android_log_set_minimum_priority)(int priority); int (*__android_log_get_minimum_priority)(); void (*__android_log_set_default_tag)(const char* tag); }; const std::optional<LibLogFunctions>& GetLibLogFunctions(); Loading base/logging.cpp +25 −30 Original line number Diff line number Diff line Loading @@ -211,19 +211,19 @@ static AbortFunction& Aborter() { return aborter; } // Only used for Q fallback. static std::recursive_mutex& TagLock() { static auto& tag_lock = *new std::recursive_mutex(); return tag_lock; } // Only used for Q fallback. static std::string* gDefaultTag; std::string GetDefaultTag() { std::lock_guard<std::recursive_mutex> lock(TagLock()); if (gDefaultTag == nullptr) { return ""; } return *gDefaultTag; } void SetDefaultTag(const std::string& tag) { static auto& liblog_functions = GetLibLogFunctions(); if (liblog_functions) { liblog_functions->__android_log_set_default_tag(tag.c_str()); } else { std::lock_guard<std::recursive_mutex> lock(TagLock()); if (gDefaultTag != nullptr) { delete gDefaultTag; Loading @@ -233,6 +233,7 @@ void SetDefaultTag(const std::string& tag) { gDefaultTag = new std::string(tag); } } } static bool gInitialized = false; Loading Loading @@ -574,24 +575,18 @@ void LogMessage::LogLine(const char* file, unsigned int line, LogSeverity severi const char* message) { static auto& liblog_functions = GetLibLogFunctions(); auto priority = LogSeverityToPriority(severity); if (liblog_functions) { __android_logger_data logger_data = { sizeof(__android_logger_data), LOG_ID_DEFAULT, priority, tag, file, line}; __android_log_write_logger_data(&logger_data, message); } else { if (tag == nullptr) { std::lock_guard<std::recursive_mutex> lock(TagLock()); if (gDefaultTag == nullptr) { gDefaultTag = new std::string(getprogname()); } if (liblog_functions) { __android_logger_data logger_data = {sizeof(__android_logger_data), LOG_ID_DEFAULT, priority, gDefaultTag->c_str(), file, line}; __android_log_write_logger_data(&logger_data, message); } else { Logger()(DEFAULT, severity, gDefaultTag->c_str(), file, line, message); } } else { if (liblog_functions) { __android_logger_data logger_data = { sizeof(__android_logger_data), LOG_ID_DEFAULT, priority, tag, file, line}; __android_log_write_logger_data(&logger_data, message); } else { Logger()(DEFAULT, severity, tag, file, line, message); } Loading base/logging_test.cpp +0 −15 Original line number Diff line number Diff line Loading @@ -603,21 +603,6 @@ __attribute__((constructor)) void TestLoggingInConstructor() { LOG(ERROR) << "foobar"; } TEST(logging, SetDefaultTag) { constexpr const char* expected_tag = "test_tag"; constexpr const char* expected_msg = "foobar"; CapturedStderr cap; { std::string old_default_tag = android::base::GetDefaultTag(); android::base::SetDefaultTag(expected_tag); android::base::ScopedLogSeverity sls(android::base::LogSeverity::INFO); LOG(INFO) << expected_msg; android::base::SetDefaultTag(old_default_tag); } ASSERT_NO_FATAL_FAILURE( CheckMessage(cap, android::base::LogSeverity::INFO, expected_msg, expected_tag)); } TEST(logging, StdioLogger) { CapturedStderr cap_err; CapturedStdout cap_out; Loading Loading
base/include/android-base/logging.h +0 −1 Original line number Diff line number Diff line Loading @@ -115,7 +115,6 @@ void StdioLogger(LogId, LogSeverity, const char*, const char*, unsigned int, con void DefaultAborter(const char* abort_message); std::string GetDefaultTag(); void SetDefaultTag(const std::string& tag); // We expose this even though it is the default because a user that wants to Loading
base/liblog_symbols.cpp +2 −0 Original line number Diff line number Diff line Loading @@ -50,6 +50,7 @@ const std::optional<LibLogFunctions>& GetLibLogFunctions() { DLSYM(__android_log_default_aborter) DLSYM(__android_log_set_minimum_priority); DLSYM(__android_log_get_minimum_priority); DLSYM(__android_log_set_default_tag); #undef DLSYM return real_liblog_functions; Loading @@ -72,6 +73,7 @@ const std::optional<LibLogFunctions>& GetLibLogFunctions() { .__android_log_default_aborter = __android_log_default_aborter, .__android_log_set_minimum_priority = __android_log_set_minimum_priority, .__android_log_get_minimum_priority = __android_log_get_minimum_priority, .__android_log_set_default_tag = __android_log_set_default_tag, }; }(); return liblog_functions; Loading
base/liblog_symbols.h +1 −0 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ struct LibLogFunctions { void (*__android_log_default_aborter)(const char* abort_message); int (*__android_log_set_minimum_priority)(int priority); int (*__android_log_get_minimum_priority)(); void (*__android_log_set_default_tag)(const char* tag); }; const std::optional<LibLogFunctions>& GetLibLogFunctions(); Loading
base/logging.cpp +25 −30 Original line number Diff line number Diff line Loading @@ -211,19 +211,19 @@ static AbortFunction& Aborter() { return aborter; } // Only used for Q fallback. static std::recursive_mutex& TagLock() { static auto& tag_lock = *new std::recursive_mutex(); return tag_lock; } // Only used for Q fallback. static std::string* gDefaultTag; std::string GetDefaultTag() { std::lock_guard<std::recursive_mutex> lock(TagLock()); if (gDefaultTag == nullptr) { return ""; } return *gDefaultTag; } void SetDefaultTag(const std::string& tag) { static auto& liblog_functions = GetLibLogFunctions(); if (liblog_functions) { liblog_functions->__android_log_set_default_tag(tag.c_str()); } else { std::lock_guard<std::recursive_mutex> lock(TagLock()); if (gDefaultTag != nullptr) { delete gDefaultTag; Loading @@ -233,6 +233,7 @@ void SetDefaultTag(const std::string& tag) { gDefaultTag = new std::string(tag); } } } static bool gInitialized = false; Loading Loading @@ -574,24 +575,18 @@ void LogMessage::LogLine(const char* file, unsigned int line, LogSeverity severi const char* message) { static auto& liblog_functions = GetLibLogFunctions(); auto priority = LogSeverityToPriority(severity); if (liblog_functions) { __android_logger_data logger_data = { sizeof(__android_logger_data), LOG_ID_DEFAULT, priority, tag, file, line}; __android_log_write_logger_data(&logger_data, message); } else { if (tag == nullptr) { std::lock_guard<std::recursive_mutex> lock(TagLock()); if (gDefaultTag == nullptr) { gDefaultTag = new std::string(getprogname()); } if (liblog_functions) { __android_logger_data logger_data = {sizeof(__android_logger_data), LOG_ID_DEFAULT, priority, gDefaultTag->c_str(), file, line}; __android_log_write_logger_data(&logger_data, message); } else { Logger()(DEFAULT, severity, gDefaultTag->c_str(), file, line, message); } } else { if (liblog_functions) { __android_logger_data logger_data = { sizeof(__android_logger_data), LOG_ID_DEFAULT, priority, tag, file, line}; __android_log_write_logger_data(&logger_data, message); } else { Logger()(DEFAULT, severity, tag, file, line, message); } Loading
base/logging_test.cpp +0 −15 Original line number Diff line number Diff line Loading @@ -603,21 +603,6 @@ __attribute__((constructor)) void TestLoggingInConstructor() { LOG(ERROR) << "foobar"; } TEST(logging, SetDefaultTag) { constexpr const char* expected_tag = "test_tag"; constexpr const char* expected_msg = "foobar"; CapturedStderr cap; { std::string old_default_tag = android::base::GetDefaultTag(); android::base::SetDefaultTag(expected_tag); android::base::ScopedLogSeverity sls(android::base::LogSeverity::INFO); LOG(INFO) << expected_msg; android::base::SetDefaultTag(old_default_tag); } ASSERT_NO_FATAL_FAILURE( CheckMessage(cap, android::base::LogSeverity::INFO, expected_msg, expected_tag)); } TEST(logging, StdioLogger) { CapturedStderr cap_err; CapturedStdout cap_out; Loading