From: Thayne McCombs Date: Fri, 2 Apr 2021 20:12:43 +0000 (-0600) Subject: BUG/MINOR: tools: fix parsing "us" unit for timers X-Git-Tag: v2.3.10~25 X-Git-Url: http://git.haproxy.org/?a=commitdiff_plain;h=d5a8cec169845d6a54f1fc4800e6291d58aa6f36;p=haproxy-2.3.git BUG/MINOR: tools: fix parsing "us" unit for timers Commit c20ad0d8dbd1bb5707bbfe23632415c3062e046c (BUG/MINOR: tools: make parse_time_err() more strict on the timer validity) broke parsing the "us" unit in timers. It caused `parse_time_err()` to return the string "s", which indicates an error. Now if the "u" is followed by an "s" we properly continue processing the time instead of immediately failing. This fixes #1209. It must be backported to all stable versions. (cherry picked from commit a68380524b5b47cd77f5f4a47c1441b3c5b2cf93) Signed-off-by: Christopher Faulet --- diff --git a/src/tools.c b/src/tools.c index 075f61f..5d67bd7 100644 --- a/src/tools.c +++ b/src/tools.c @@ -2260,6 +2260,7 @@ const char *parse_time_err(const char *text, unsigned *ret, unsigned unit_flags) if (text[1] == 's') { idiv = 1000000; text++; + break; } return text; case 'm': /* millisecond : "ms" or minute: "m" */