Diff

util/format.lua @ 9656:3da6cc927ee6

util.format: Tweak how nil values are handled Because [<nil>] seems exsessive
author Kim Alvefur <zash@zash.se>
date Wed, 28 Nov 2018 20:36:53 +0100
parent 8417:e88db5668cfb
child 9687:8c92ef4270c9
line wrap: on
line diff
--- a/util/format.lua	Tue Nov 27 21:23:31 2018 +0100
+++ b/util/format.lua	Wed Nov 28 20:36:53 2018 +0100
@@ -28,13 +28,12 @@
 		if spec ~= "%%" then
 			i = i + 1;
 			local arg = args[i];
-			if arg == nil then -- special handling for nil
-				arg = "<nil>"
-				args[i] = "<nil>";
-			end
 
 			local option = spec:sub(-1);
-			if option == "q" or option == "s" then -- arg should be string
+			if arg == nil then
+				args[i] = "nil";
+				spec = "<%s>";
+			elseif option == "q" or option == "s" then -- arg should be string
 				args[i] = tostring(arg);
 			elseif type(arg) ~= "number" then -- arg isn't number as expected?
 				args[i] = tostring(arg);