diff --git a/AK/StringBuilder.cpp b/AK/StringBuilder.cpp index 5678d1de790..53a72f04dec 100644 --- a/AK/StringBuilder.cpp +++ b/AK/StringBuilder.cpp @@ -22,7 +22,9 @@ inline void StringBuilder::will_append(size_t size) needed_capacity += size; VERIFY(!needed_capacity.has_overflow()); Checked expanded_capacity = needed_capacity; - expanded_capacity *= 2; + // Prefer to completely use the inline buffer first + if (needed_capacity > inline_capacity) + expanded_capacity *= 2; VERIFY(!expanded_capacity.has_overflow()); m_buffer.grow(expanded_capacity.value()); }