From f483b9bb7add22ca7b638281965246c895ca2160 Mon Sep 17 00:00:00 2001 From: Tyge Løvset Date: Mon, 26 Oct 2020 14:45:28 +0100 Subject: Minor. --- stc/cfmt.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/stc/cfmt.h b/stc/cfmt.h index d056aa7a..642ed971 100644 --- a/stc/cfmt.h +++ b/stc/cfmt.h @@ -207,13 +207,15 @@ _cfmt_conv(int nargs, const char *fmt, ...) { fmt += 1 + (fmt[1] == ':'); arg = va_arg(args, char *); *p++ = '%'; p0 = p; align = 0; - while (*fmt != '}' && *fmt) switch (*fmt) { + while (1) switch (*fmt) { + case '}': case '\0': goto done; case '<': *p++ = '-', ++fmt, align = 1; break; case '>': ++fmt, align = 1; break; case '-': ++fmt; break; case '*': if (++n <= nargs) arg = va_arg(args, char *); /* nobreak */ default: *p++ = *fmt++; } + done: if (!strchr("csdioxXufFeEaAgGnp", fmt[-1])) while (*arg) *p++ = *arg++; if (p[-1] == 'B') -- cgit v1.2.3