[PATCH v2] stdio-common: Restore while (1) loop in printf_positional

Florian Weimer <[email protected]>
Newsgroups gmane.comp.lib.glibc.alpha
Message-ID <[email protected]>
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.