From b589bd672c529cf264dc6dfdfa11f73c7e4e1666 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Mon, 10 Aug 2026 14:53:31 +0200 Subject: [PATCH] stdio-common: Restore while (1) loop in printf_positional The old condition is misleading because it is never evaluated. Switch back to the original approach before the printf buffer rewrite. --- stdio-common/vfprintf-internal.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/stdio-common/vfprintf-internal.c b/stdio-common/vfprintf-internal.c index 14ac0d9762..38a55443eb 100644 --- a/stdio-common/vfprintf-internal.c +++ b/stdio-common/vfprintf-internal.c @@ -1335,7 +1335,7 @@ printf_positional (struct Xprintf_buffer * buf, const CHAR_T *format, } /* Process format specifiers. */ - do + while (1) { # ifdef COMPILE_WPRINTF # define CHECK_SPEC(spec) ((spec) <= UCHAR_MAX) @@ -1415,7 +1415,6 @@ printf_positional (struct Xprintf_buffer * buf, const CHAR_T *format, } break; } - while (Xprintf_buffer_has_failed (buf)); /* Write the following constant string. */ Xprintf_buffer_write (buf, -- 2.47.3