1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 15:17:36 +00:00

AK+Kernel+Userland: Enable some more compiletime format string checks

This enables format string checks for three more functions:
- String::formatted()
- Builder::appendff()
- KBufferBuilder::appendff()
This commit is contained in:
AnotherTest 2021-02-23 09:58:15 +03:30 committed by Andreas Kling
parent c989e55195
commit 7c2754c3a6
6 changed files with 24 additions and 17 deletions

View file

@ -164,8 +164,11 @@ String Keypad::to_string() const
builder.append("-");
builder.appendff("{}", m_int_value);
if (m_frac_length > 0)
builder.appendff(".{:0{}}", m_frac_value, m_frac_length);
if (m_frac_length > 0) {
// FIXME: This disables the compiletime format string check since we can't parse '}}' here correctly.
// remove the 'StringView { }' when that's fixed.
builder.appendff(StringView { ".{:0{}}" }, m_frac_value, m_frac_length);
}
return builder.to_string();
}

View file

@ -60,7 +60,7 @@ static TitleAndText build_backtrace(const CoreDump::Reader& coredump, const ELF:
StringBuilder builder;
auto prepend_metadata = [&](auto& key, auto& fmt) {
auto prepend_metadata = [&](auto& key, StringView fmt) {
auto maybe_value = coredump.metadata().get(key);
if (!maybe_value.has_value() || maybe_value.value().is_empty())
return;