From 46c73cbc8791065c781133feac4eff190b0303da Mon Sep 17 00:00:00 2001 From: Lephenixnoir Date: Sun, 4 Feb 2024 20:13:25 +0100 Subject: [PATCH] stdio: fix %N.Ms miscalculating spacing if M > strlen(arg) --- src/stdio/printf/format_usual.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/stdio/printf/format_usual.c b/src/stdio/printf/format_usual.c index 7c8eb64..a414150 100644 --- a/src/stdio/printf/format_usual.c +++ b/src/stdio/printf/format_usual.c @@ -59,6 +59,8 @@ void __printf_format_s( size_t len = 0; uint32_t precision = opt->precision ? opt->precision : (-1); while(s[len] && len < precision) len++; + /* Cap precision to real value for __printf_compute_geometry() */ + opt->precision = len; struct __printf_geometry g = { .prefix = 0, .sign = 0, .content = len,