From 679e4c434f755644cc2093c9940ac58d0c2b51cf Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Fri, 11 Oct 2002 07:22:18 +0000 Subject: * locale/newlocale.c (__newlocale): If setting all categories to "C", just return &_nl_C_locobj instead of copying it. * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj. * locale/duplocale.c (__duplocale): Likewise. 2002-10-07 Roland McGrath * config.h.in (HAVE_I386_SET_GDT): New #undef. * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt. * sysdeps/mach/configure: Regenerated. 2002-10-06 Franz Sirl * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL): Add all necessary register outputs for syscall-clobbered registers. 2002-10-02 David Mosberger * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for Itanium 2 (and Itanium). Fix unwind directives and make it fit in 80 columns. * sysdeps/ia64/memset.S: Ditto. * sysdeps/ia64/memcpy.S: Ditto. Move jump table to .rodata section. 2002-10-03 Roland McGrath * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add clobbers to asm. --- locale/duplocale.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'locale/duplocale.c') diff --git a/locale/duplocale.c b/locale/duplocale.c index 2fa29d1..77dfc01 100644 --- a/locale/duplocale.c +++ b/locale/duplocale.c @@ -33,6 +33,10 @@ __libc_lock_define (extern , __libc_setlocale_lock attribute_hidden) __locale_t __duplocale (__locale_t dataset) { + /* This static object is returned for newlocale (LC_ALL_MASK, "C"). */ + if (dataset == &_nl_C_locobj) + return dataset; + __locale_t result; int cnt; size_t names_len = 0; -- cgit v1.1