From c629e20cfcf3edc3e47272db9b4c843532e455b9 Mon Sep 17 00:00:00 2001 From: Nicholas Date: Thu, 11 Nov 2021 17:09:14 -0800 Subject: fix(fmt): incorrect dispatch handling --- sys/libfmt/do.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/libfmt/do.c b/sys/libfmt/do.c index 0a930b0..1e033d6 100644 --- a/sys/libfmt/do.c +++ b/sys/libfmt/do.c @@ -139,8 +139,9 @@ dispatch(fmt·State *io, char *fmt) i = va_arg(io->args, int); if(i < 0){ if(io->flag&fmt·Prec){ - io->flag = ~fmt·Prec; + io->flag &= ~fmt·Prec; io->prec = 0; + continue; } i = -i; io->flag |= fmt·Left; -- cgit v1.2.1