Diff

util/human/io.lua @ 13199:278920294dfe

util.human.io: Fix pattern in parse_duration() to cover all used letters Notably 'h' was missing. Awkwardly, 'hour' would result in 'ho' which was missing from table.
author Kim Alvefur <zash@zash.se>
date Sun, 16 Jul 2023 19:27:18 +0200
parent 13068:7a75cbc4d87c
child 13210:8dbe693ded6b
line wrap: on
line diff
--- a/util/human/io.lua	Sun Jul 16 19:26:05 2023 +0200
+++ b/util/human/io.lua	Sun Jul 16 19:27:18 2023 +0200
@@ -197,10 +197,10 @@
 local day = 86400;
 local multipliers = {
 	d = day, w = day * 7, m = 31 * day, mo = 31 * day, y = 365.2425 * day;
-	s = 1, mi = 60, h = 3600
+	s = 1, mi = 60, h = 3600, ho = 3600
 };
 local function parse_duration(duration_string)
-	local n, m = duration_string:lower():match("(%d+)%s*([dwmy]?.?)");
+	local n, m = duration_string:lower():match("(%d+)%s*([smhdwy]?[io]?)");
 	if not n then return nil; end
 	return tonumber(n) * ( multipliers[m] or 1 );
 end