From: Ulrich Drepper Date: Fri, 6 Aug 2004 18:32:16 +0000 (+0000) Subject: Update. X-Git-Tag: upstream/2.30~17726 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9e365fe71070d133f1cd7711c1697adefc84527c;p=external%2Fglibc.git Update. 2004-08-06 Ulrich Drepper * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo. Reported by Paolo Bonzini. 2004-08-06 Jakub Jelinek * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add always_inline. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup, elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise. * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h before including linux/atalk.h. * resolv/res_libc.c: Include atomic.h. * intl/finddomain.c (free_mem): Rename to... (_nl_finddomain_subfreeres): ... this. Add __libc_freeres_fn_section. * intl/loadmsgcat.c (_nl_unload_domain): Add __libc_freeres_fn_section. * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC. Add attribute_hidden. (_nl_findomain_subfreeres): New prototype. * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres. --- diff --git a/ChangeLog b/ChangeLog index 5b26707..e274e2e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,30 @@ +2004-08-06 Ulrich Drepper + + * iconvdata/jisx0213.h (jisx0213_added_in_2004_p): Fix typo. + Reported by Paolo Bonzini. + +2004-08-06 Jakub Jelinek + + * sysdeps/ia64/dl-machine.h (elf_machine_fixup_plt): Add + always_inline. + * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_runtime_setup, + elf_machine_fixup_plt, elf_machine_plt_conflict): Likewise. + + * sysdeps/unix/sysv/linux/netatalk/at.h: Include bits/sockaddr.h + before including linux/atalk.h. + + * resolv/res_libc.c: Include atomic.h. + + * intl/finddomain.c (free_mem): Rename to... + (_nl_finddomain_subfreeres): ... this. Add + __libc_freeres_fn_section. + * intl/loadmsgcat.c (_nl_unload_domain): Add + __libc_freeres_fn_section. + * intl/gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC. + Add attribute_hidden. + (_nl_findomain_subfreeres): New prototype. + * iconv/gconv_db.c (free_mem): Call _nl_findomain_subfreeres. + 2004-07-30 Guido Guenther * nss/getent.c (passwd_keys): Use strtoul instead of isdigit to diff --git a/iconv/gconv_db.c b/iconv/gconv_db.c index 719ff95..8dc6b14 100644 --- a/iconv/gconv_db.c +++ b/iconv/gconv_db.c @@ -791,6 +791,10 @@ libc_freeres_fn (free_mem) as ctype cleanup functions dereference steps arrays which we free below. */ _nl_locale_subfreeres (); + /* finddomain.c has similar problem. */ + extern void _nl_finddomain_subfreeres (void) attribute_hidden; + _nl_finddomain_subfreeres (); + if (__gconv_alias_db != NULL) __tdestroy (__gconv_alias_db, free); diff --git a/iconvdata/jisx0213.h b/iconvdata/jisx0213.h index c549f59..9d50306 100644 --- a/iconvdata/jisx0213.h +++ b/iconvdata/jisx0213.h @@ -90,7 +90,7 @@ jisx0213_added_in_2004_p (uint16_t val) case 0x2f: return val == 0x2f7e; case 0x4f: - return val == 0x4f54 || 0x4f7e; + return val == 0x4f54 || val == 0x4f7e; case 0x74: return val == 0x7427; case 0x7e: diff --git a/intl/finddomain.c b/intl/finddomain.c index 1031e4d..6988d9e 100644 --- a/intl/finddomain.c +++ b/intl/finddomain.c @@ -1,5 +1,6 @@ /* Handle list of needed message catalogs - Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc. + Copyright (C) 1995-1999, 2000, 2001, 2002, 2004 + Free Software Foundation, Inc. This file is part of the GNU C Library. Written by Ulrich Drepper , 1995. @@ -168,7 +169,10 @@ _nl_find_domain (dirname, locale, domainname, domainbinding) #ifdef _LIBC -libc_freeres_fn (free_mem) +/* This is called from iconv/gconv_db.c's free_mem, as locales must + be freed before freeing gconv steps arrays. */ +void __libc_freeres_fn_section +_nl_finddomain_subfreeres () { struct loaded_l10nfile *runp = _nl_loaded_domains; diff --git a/intl/gettextP.h b/intl/gettextP.h index 69a95ca..46b51e1 100644 --- a/intl/gettextP.h +++ b/intl/gettextP.h @@ -1,5 +1,5 @@ /* Header describing internals of libintl library. - Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc. + Copyright (C) 1995-1999, 2000, 2001, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. Written by Ulrich Drepper , 1995. @@ -173,8 +173,6 @@ struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname, void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain, struct binding *__domainbinding)) internal_function; -void _nl_unload_domain PARAMS ((struct loaded_domain *__domain)) - internal_function; const char *_nl_init_domain_conv PARAMS ((struct loaded_l10nfile *__domain_file, struct loaded_domain *__domain, struct binding *__domainbinding)) @@ -210,6 +208,9 @@ extern char *__bindtextdomain PARAMS ((const char *__domainname, const char *__dirname)); extern char *__bind_textdomain_codeset PARAMS ((const char *__domainname, const char *__codeset)); +extern void _nl_finddomain_subfreeres PARAMS ((void)) attribute_hidden; +extern void _nl_unload_domain PARAMS ((struct loaded_domain *__domain)) + internal_function attribute_hidden; #else extern char *libintl_gettext PARAMS ((const char *__msgid)); extern char *libintl_dgettext PARAMS ((const char *__domainname, diff --git a/intl/loadmsgcat.c b/intl/loadmsgcat.c index a9c257c..569ace2 100644 --- a/intl/loadmsgcat.c +++ b/intl/loadmsgcat.c @@ -1387,7 +1387,7 @@ _nl_load_domain (domain_file, domainbinding) #ifdef _LIBC void -internal_function +internal_function __libc_freeres_fn_section _nl_unload_domain (domain) struct loaded_domain *domain; { diff --git a/resolv/res_libc.c b/resolv/res_libc.c index b1047f0..e41cf0f 100644 --- a/resolv/res_libc.c +++ b/resolv/res_libc.c @@ -15,6 +15,7 @@ * SOFTWARE. */ +#include #include #include #include diff --git a/sysdeps/ia64/dl-machine.h b/sysdeps/ia64/dl-machine.h index fbf3f20..8714c01 100644 --- a/sysdeps/ia64/dl-machine.h +++ b/sysdeps/ia64/dl-machine.h @@ -460,7 +460,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) #define elf_machine_profile_plt(reloc_addr) ((Elf64_Addr) (reloc_addr)) /* Fixup a PLT entry to bounce directly to the function at VALUE. */ -static inline Elf64_Addr +static inline Elf64_Addr __attribute__ ((always_inline)) elf_machine_fixup_plt (struct link_map *l, lookup_t t, const Elf64_Rela *reloc, Elf64_Addr *reloc_addr, Elf64_Addr value) diff --git a/sysdeps/powerpc/powerpc64/dl-machine.h b/sysdeps/powerpc/powerpc64/dl-machine.h index 2a090ec..bcaa200 100644 --- a/sysdeps/powerpc/powerpc64/dl-machine.h +++ b/sysdeps/powerpc/powerpc64/dl-machine.h @@ -384,7 +384,7 @@ DL_STARTING_UP_DEF \ /* Set up the loaded object described by MAP so its unrelocated PLT entries will jump to the on-demand fixup code in dl-runtime.c. */ -static inline int +static inline int __attribute__ ((always_inline)) elf_machine_runtime_setup (struct link_map *map, int lazy, int profile) { if (map->l_info[DT_JMPREL]) @@ -481,7 +481,7 @@ elf_machine_runtime_setup (struct link_map *map, int lazy, int profile) /* Change the PLT entry whose reloc is 'reloc' to call the actual routine. */ -static inline Elf64_Addr +static inline Elf64_Addr __attribute__ ((always_inline)) elf_machine_fixup_plt (struct link_map *map, lookup_t sym_map, const Elf64_Rela *reloc, Elf64_Addr *reloc_addr, Elf64_Addr finaladdr) @@ -523,7 +523,7 @@ elf_machine_fixup_plt (struct link_map *map, lookup_t sym_map, return finaladdr; } -static inline void +static inline void __attribute__ ((always_inline)) elf_machine_plt_conflict (Elf64_Addr *reloc_addr, Elf64_Addr finaladdr) { Elf64_FuncDesc *plt = (Elf64_FuncDesc *) reloc_addr; diff --git a/sysdeps/unix/sysv/linux/netatalk/at.h b/sysdeps/unix/sysv/linux/netatalk/at.h index c624516..2668fc9 100644 --- a/sysdeps/unix/sysv/linux/netatalk/at.h +++ b/sysdeps/unix/sysv/linux/netatalk/at.h @@ -1,4 +1,5 @@ -/* Copyright (C) 1991, 92, 93, 95, 96, 97 Free Software Foundation, Inc. +/* Copyright (C) 1991, 1992, 1993, 1995, 1996, 1997, 2004 + Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -20,6 +21,7 @@ #define _NETATALK_AT_H 1 #include +#include #include #include