Compare commits

...

3 Commits

Author SHA1 Message Date
lizzie 1765410cb0 vformat... oops! 2026-08-29 06:49:47 +00:00
lizzie c3aa29e3d1 dont cutoff long stuffs 2026-08-29 04:09:57 +00:00
lizzie faac9b3f9c [common/logging] Less clutter on Android logcat
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2026-08-27 03:07:38 +00:00
2 changed files with 29 additions and 17 deletions
+27 -15
View File
@@ -329,7 +329,7 @@ struct LogcatBackend : public Backend {
} }
}(); }();
auto const df = GetDirectFormatArgs(entry); auto const df = GetDirectFormatArgs(entry);
__android_log_print(android_log_priority, "YuzuNative", CCB_PRINTF_FMT, df.time_seconds, df.time_fractional, df.class_name, df.level_name, entry.filename, entry.line_num, entry.function, entry.message); __android_log_print(android_log_priority, "YuzuNative", "%s %s:%u:%s: %s", df.class_name, entry.filename, entry.line_num, entry.function, entry.message);
} }
void Flush() noexcept override {} void Flush() noexcept override {}
}; };
@@ -428,21 +428,33 @@ void FmtLogMessageImpl(Class log_class, Level log_level, const char* filename, u
auto const flush = ::Settings::values.log_flush_line.GetValue(); auto const flush = ::Settings::values.log_flush_line.GetValue();
char buffer[BUFSIZ]; char buffer[BUFSIZ];
auto result = fmt::vformat_to_n(buffer, sizeof(buffer) - 1, format, args); auto result = fmt::vformat_to_n(buffer, sizeof(buffer) - 1, format, args);
buffer[(std::min)(result.size, sizeof(buffer) - 1)] = '\0'; Entry e{
logging_instance->ForEachBackend([=](Backend& backend) { .message = nullptr,
backend.Write(Entry{ .message_len = 0,
.message = buffer, .timestamp = std::chrono::duration_cast<std::chrono::microseconds>(std::chrono::steady_clock::now() - logging_instance->time_origin),
.message_len = (std::min)(result.size, sizeof(buffer) - 1), .log_class = log_class,
.timestamp = std::chrono::duration_cast<std::chrono::microseconds>(std::chrono::steady_clock::now() - logging_instance->time_origin), .log_level = log_level,
.log_class = log_class, .filename = TrimSourcePath(filename),
.log_level = log_level, .function = function,
.filename = TrimSourcePath(filename), .line_num = line_num,
.function = function, };
.line_num = line_num, if (result.size <= sizeof(buffer - 1)) {
buffer[(std::min)(result.size, sizeof(buffer) - 1)] = '\0';
e.message = buffer;
e.message_len = (std::min)(result.size, sizeof(buffer) - 1);
logging_instance->ForEachBackend([=](Backend& backend) {
backend.Write(e);
if (flush) backend.Flush();
}); });
if (flush) } else {
backend.Flush(); std::string s = fmt::vformat(format, args);
}); e.message = s.c_str();
e.message_len = s.size();
logging_instance->ForEachBackend([=](Backend& backend) {
backend.Write(e);
if (flush) backend.Flush();
});
}
} }
} }
} // namespace Common::Log } // namespace Common::Log
+2 -2
View File
@@ -126,9 +126,9 @@ void LogSettings() {
setting->UsingGlobal() ? '-' : 'C', TranslateCategory(category), setting->UsingGlobal() ? '-' : 'C', TranslateCategory(category),
setting->GetLabel()); setting->GetLabel());
if (is_default) if (is_default)
settings_list.push_back(fmt::format("{}: {}\n", name, setting->Canonicalize())); settings_list.push_back(fmt::format("{}: {}", name, setting->Canonicalize()));
else else
settings_list.push_front(fmt::format("{}: {}\n", name, setting->Canonicalize())); settings_list.push_front(fmt::format("{}: {}", name, setting->Canonicalize()));
} }
} }
} }