about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--iconv/gconv_cache.c15
-rw-r--r--locale/loadlocale.c4
3 files changed, 17 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index ffe93fa06f..3e5caaa3df 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,7 @@
 2005-12-20  Ulrich Drepper  <drepper@redhat.com>
 
-	* iconv/gconv_conf.c (builtin_aliases): Mark as const.
+	* locale/loadlocale.c (_nl_value_types): Mark as const.
+	* iconv/gconv_conf.c (builtin_aliases): Likewise.
 	* iconv/gconv_open.c (internal_trans_names): Likewise.
 
 2005-12-19  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
diff --git a/iconv/gconv_cache.c b/iconv/gconv_cache.c
index 9b695c377d..9a8a20816c 100644
--- a/iconv/gconv_cache.c
+++ b/iconv/gconv_cache.c
@@ -1,5 +1,5 @@
 /* Cache handling for iconv modules.
-   Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 2001.
 
@@ -209,7 +209,18 @@ find_module (const char *directory, const char *filename,
 
       /* Call the init function.  */
       if (result->__init_fct != NULL)
-	status = DL_CALL_FCT (result->__init_fct, (result));
+	{
+	  __gconv_init_fct init_fct = result->__init_fct;
+#ifdef PTR_DEMANGLE
+	  PTR_DEMANGLE (init_fct);
+#endif
+	  status = DL_CALL_FCT (init_fct, (result));
+
+#ifdef PTR_MANGLE
+	  if (result->__btowc_fct != NULL)
+	    PTR_MANGLE (result->__btowc_fct);
+#endif
+	}
     }
 
   return status;
diff --git a/locale/loadlocale.c b/locale/loadlocale.c
index 11ece50a22..2a5935087c 100644
--- a/locale/loadlocale.c
+++ b/locale/loadlocale.c
@@ -1,5 +1,5 @@
 /* Functions to read locale data files.
-   Copyright (C) 1996-2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+   Copyright (C) 1996-2004, 2005 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
 
@@ -52,7 +52,7 @@ static const enum value_type _nl_value_type_##category[] = { NO_PAREN items };
 #include "categories.def"
 #undef DEFINE_CATEGORY
 
-static const enum value_type *_nl_value_types[] =
+static const enum value_type *const _nl_value_types[] =
 {
 #define DEFINE_CATEGORY(category, category_name, items, a) \
   [category] = _nl_value_type_##category,