From f2b98f97ebc32b68271505131b745289f3255984 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 5 Feb 2002 23:29:24 +0000 Subject: Update. * inet/getnetgrent_r.c (innetgr): Add int* parameter to getfct definition and pass &errno in use of this variable. Reported by Simon Wilkinson [PR libc/2911]. 2002-02-04 Andreas Schwab * locale/programs/localedef.h (WITH_CUR_LOCALE): Define. * locale/programs/charmap-dir.c: Wrap calls that output messages with WITH_CUR_LOCALE. Include "localedef.h" first. * locale/programs/charmap.c: Likewise. * locale/programs/ld-address.c: Likewise. * locale/programs/ld-collate.c: Likewise. * locale/programs/ld-ctype.c: Likewise. * locale/programs/ld-identification.c: Likewise. * locale/programs/ld-measurement.c: Likewise. * locale/programs/ld-messages.c: Likewise. * locale/programs/ld-monetary.c: Likewise. * locale/programs/ld-name.c: Likewise. * locale/programs/ld-numeric.c: Likewise. * locale/programs/ld-paper.c: Likewise. * locale/programs/ld-telephone.c: Likewise. * locale/programs/ld-time.c: Likewise. * locale/programs/linereader.c: Likewise. * locale/programs/linereader.h: Likewise. * locale/programs/localedef.c: Likewise. * locale/programs/locfile.c: Likewise. * locale/programs/repertoire.c: Likewise. 2002-02-05 Ulrich Drepper --- locale/programs/localedef.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'locale/programs/localedef.h') diff --git a/locale/programs/localedef.h b/locale/programs/localedef.h index cdb08d8293..717962e10b 100644 --- a/locale/programs/localedef.h +++ b/locale/programs/localedef.h @@ -24,6 +24,7 @@ /* Get the basic locale definitions. */ #include #include +#include #include "repertoire.h" @@ -122,6 +123,19 @@ extern void *xrealloc (void *__p, size_t __n); extern char *xstrdup (const char *__str); +/* Wrapper to switch LC_CTYPE back to the locale specified in the + environment for output. */ +#define WITH_CUR_LOCALE(stmt) \ + do { \ + int saved_errno = errno; \ + const char *cur_locale_ = setlocale (LC_CTYPE, NULL); \ + setlocale (LC_CTYPE, ""); \ + errno = saved_errno; \ + stmt; \ + setlocale (LC_CTYPE, cur_locale_); \ + } while (0) + + /* Mark given locale as to be read. */ extern struct localedef_t *add_to_readlist (int locale, const char *name, const char *repertoire_name, -- cgit v1.2.3