# HG changeset patch # User Kim Alvefur # Date 1639409913 -3600 # Node ID 337b489532b78c83ac8f7a35e0ec074886d3c6b7 # Parent e0a8c5b1ab4f895c6a6f79295af0e7d515ac2b1b util.format: Optimize most common integer format A search for log formats in use points to %s being the most common, followed by %d, so worth having a fast path for that. %g works well with most numbers and is what Lua 5.1 and 5.2 used diff -r e0a8c5b1ab4f -r 337b489532b7 util/format.lua --- a/util/format.lua Mon Dec 13 16:34:55 2021 +0100 +++ b/util/format.lua Mon Dec 13 16:38:33 2021 +0100 @@ -69,6 +69,8 @@ if option == "s" and t == "string" and not arg:find("[%z\1-\31\128-\255]") then -- No UTF-8 or control characters, assumed to be the common case. return + elseif t == "number" then + if option == "g" or (option == "d" and num_type(arg) == "integer") then return end elseif option == "s" and t ~= "string" then arg = tostring(arg); t = "string";