]> git.ipfire.org Git - thirdparty/gettext.git/commitdiff
glibc 2004-08-06 Jakub Jelinek <jakub@redhat.com>
authorBruno Haible <bruno@clisp.org>
Fri, 20 May 2005 10:01:05 +0000 (10:01 +0000)
committerBruno Haible <bruno@clisp.org>
Tue, 23 Jun 2009 10:12:34 +0000 (12:12 +0200)
gettext-runtime/intl/ChangeLog
gettext-runtime/intl/finddomain.c
gettext-runtime/intl/gettextP.h
gettext-runtime/intl/loadmsgcat.c

index 4dc5f45ed79ca96d9a88621a2152f94105b6bb0b..646440f6a722fc9272d45433b5e5ef52ef12cae7 100644 (file)
@@ -1,3 +1,12 @@
+2004-08-06  Jakub Jelinek  <jakub@redhat.com>
+
+       * finddomain.c (free_mem): Rename to...
+       (_nl_finddomain_subfreeres): ... this.  Add __libc_freeres_fn_section.
+       * loadmsgcat.c (_nl_unload_domain): Add __libc_freeres_fn_section.
+       * gettextP.h (_nl_unload_domain): Move into #ifdef _LIBC.
+       Add attribute_hidden.
+       (_nl_findomain_subfreeres): New prototype.
+
 2005-05-05  Bruno Haible  <bruno@clisp.org>
 
        * dcigettext.c (_nl_find_msg) [_LIBC]: Update norm_add_slashes call.
index 4992a8c9e3352ec6c52086d05110e663753348c1..7ecd4046fd2655aaf424bec7bc11ceb4ec8972a5 100644 (file)
@@ -1,5 +1,5 @@
 /* Handle list of needed message catalogs
-   Copyright (C) 1995-1999, 2000-2001, 2003 Free Software Foundation, Inc.
+   Copyright (C) 1995-1999, 2000-2001, 2003-2004 Free Software Foundation, Inc.
    Written by Ulrich Drepper <drepper@gnu.org>, 1995.
 
    This program is free software; you can redistribute it and/or modify it
@@ -175,7 +175,10 @@ _nl_find_domain (const char *dirname, char *locale,
 
 
 #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;
 
index 6be4646eaca89002deb450093e62dbbfe0aa7569..856367e760fa69bcddf70f8623430fca8e4d25ef 100644 (file)
@@ -132,8 +132,6 @@ struct loaded_domain
   /* 1 if the hash table uses a different endianness than this machine.  */
   int must_swap_hash_tab;
 
-  int codeset_cntr;
-
   /* Cache of charset conversions of the translated strings.  */
   struct converted_domain *conversions;
   size_t nconversions;
@@ -156,7 +154,6 @@ struct binding
 {
   struct binding *next;
   char *dirname;
-  int codeset_cntr;    /* Incremented each time codeset changes.  */
   char *codeset;
   char domainname[ZERO];
 };
@@ -180,8 +177,6 @@ struct loaded_l10nfile *_nl_find_domain (const char *__dirname, char *__locale,
 void _nl_load_domain (struct loaded_l10nfile *__domain,
                      struct binding *__domainbinding)
      internal_function;
-void _nl_unload_domain (struct loaded_domain *__domain)
-     internal_function;
 
 char *_nl_find_msg (struct loaded_l10nfile *domain_file,
                    struct binding *domainbinding, const char *msgid,
@@ -210,6 +205,9 @@ extern char *__bindtextdomain (const char *__domainname,
                               const char *__dirname);
 extern char *__bind_textdomain_codeset (const char *__domainname,
                                        const char *__codeset);
+extern void _nl_finddomain_subfreeres (void) attribute_hidden;
+extern void _nl_unload_domain (struct loaded_domain *__domain)
+     internal_function attribute_hidden;
 #else
 /* Declare the exported libintl_* functions, in a way that allows us to
    call them under their real name.  */
index 9569aa872fc7c68e0c7fc3f085888f1df55eeb6c..c68a5a1519a639df5fe0766adbe1f36627032e4a 100644 (file)
@@ -1262,7 +1262,7 @@ _nl_load_domain (struct loaded_l10nfile *domain_file,
 
 #ifdef _LIBC
 void
-internal_function
+internal_function __libc_freeres_fn_section
 _nl_unload_domain (struct loaded_domain *domain)
 {
   size_t i;