From e115dbd7baf0f0850f58c41980c859d3fc0c0532 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 15 Feb 2000 05:40:40 +0000 Subject: [PATCH] Update. * stdio-common/vfprintf.c (vfprintf): Initialize thousands_sep. Define and initialize use_outdigits in the inner loops. --- ChangeLog | 3 +++ linuxthreads/condvar.c | 2 +- stdio-common/vfprintf.c | 12 ++++++------ 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index d3720b0..70f9010 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2000-02-14 Ulrich Drepper + * stdio-common/vfprintf.c (vfprintf): Initialize thousands_sep. + Define and initialize use_outdigits in the inner loops. + * sysdeps/posix/sigwait.c: Don't look for signal 0 since it does not exist. Patch by Miloslav Trmac (PR libc/1601). diff --git a/linuxthreads/condvar.c b/linuxthreads/condvar.c index 6d54291..410ca65 100644 --- a/linuxthreads/condvar.c +++ b/linuxthreads/condvar.c @@ -257,7 +257,7 @@ pthread_cond_timedwait_relative_old(pthread_cond_t *cond, static int pthread_cond_timedwait_relative_new(pthread_cond_t *cond, pthread_mutex_t *mutex, - struct timespec * reltime) + const struct timespec * abstime) { volatile pthread_descr self = thread_self(); sigset_t unblock, initial_mask; diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c index d17367f..51fd311 100644 --- a/stdio-common/vfprintf.c +++ b/stdio-common/vfprintf.c @@ -232,9 +232,9 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap) { /* The character used as thousands separator. */ #ifdef COMPILE_WPRINTF - wchar_t thousands_sep; + wchar_t thousands_sep = L'\0'; #else - const char *thousands_sep; + const char *thousands_sep = NULL; #endif /* The string describing the size of groups of digits. */ @@ -267,10 +267,6 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap) /* Count number of specifiers we already processed. */ int nspecs_done; - /* This flag is set by the 'I' modifier and selects the use of the - `outdigits' as determined by the current locale. */ - int use_outdigits; - /* For the %m format we may need the current `errno' value. */ int save_errno = errno; @@ -1292,6 +1288,9 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap) int is_char = 0; /* Argument is promoted (unsigned) char. */ int width = 0; /* Width of output; 0 means none specified. */ int prec = -1; /* Precision of output; -1 means none specified. */ + /* This flag is set by the 'I' modifier and selects the use of the + `outdigits' as determined by the current locale. */ + int use_outdigits = 0; UCHAR_T pad = L_(' ');/* Padding character. */ CHAR_T spec; @@ -1680,6 +1679,7 @@ do_positional: int is_long = specs[nspecs_done].info.is_long; int width = specs[nspecs_done].info.width; int prec = specs[nspecs_done].info.prec; + int use_outdigits = specs[nspecs_done].info.i18n; char pad = specs[nspecs_done].info.pad; CHAR_T spec = specs[nspecs_done].info.spec; -- 2.7.4