Module Name: src
Committed By: martin
Date: Thu Sep 28 10:03:41 UTC 2023
Modified Files:
src/lib/libc/stdlib: strfmon.c
Log Message:
Fix padding for formats with mutliple padded values.
PR lib/57633, fix from FreeBSD.
To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/lib/libc/stdlib/strfmon.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/lib/libc/stdlib/strfmon.c
diff -u src/lib/libc/stdlib/strfmon.c:1.18 src/lib/libc/stdlib/strfmon.c:1.19
--- src/lib/libc/stdlib/strfmon.c:1.18 Thu Aug 18 11:05:02 2022
+++ src/lib/libc/stdlib/strfmon.c Thu Sep 28 10:03:41 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: strfmon.c,v 1.18 2022/08/18 11:05:02 christos Exp $ */
+/* $NetBSD: strfmon.c,v 1.19 2023/09/28 10:03:41 martin Exp $ */
/*-
* Copyright (c) 2001 Alexey Zelkin <[email protected]>
@@ -32,7 +32,7 @@
#if 0
__FBSDID("$FreeBSD: src/lib/libc/stdlib/strfmon.c,v 1.14 2003/03/20 08:18:55 ache Exp $");
#else
-__RCSID("$NetBSD: strfmon.c,v 1.18 2022/08/18 11:05:02 christos Exp $");
+__RCSID("$NetBSD: strfmon.c,v 1.19 2023/09/28 10:03:41 martin Exp $");
#endif
#endif /* LIBC_SCCS and not lint */
@@ -141,7 +141,6 @@ vstrfmon_l(char * __restrict s, size_t m
fmt = format;
asciivalue = NULL;
currency_symbol = NULL;
- pad_size = 0;
while (*fmt) {
/* pass nonformating characters AS IS */
@@ -161,6 +160,7 @@ vstrfmon_l(char * __restrict s, size_t m
/* set up initial values */
flags = (NEED_GROUPING|LOCALE_POSN);
pad_char = ' '; /* padding character is "space" */
+ pad_size = 0; /* no padding initially */
left_prec = -1; /* no left precision specified */
right_prec = -1; /* no right precision specified */
width = -1; /* no width specified */