[PATCH v2] stdio-common: Restore while (1) loop in printf_positional
Florian Weimer
fweimer@redhat.com
Mon Aug 10 14:24:18 GMT 2026
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,
base-commit: 9d7d6480880064cb5219aa267894ffabd0c2b20c
More information about the Libc-alpha
mailing list