about summary refs log tree commit diff
path: root/locale/programs
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2006-08-19 17:54:05 +0000
committerUlrich Drepper <drepper@redhat.com>2006-08-19 17:54:05 +0000
commit8a6537b001828486c139509534c4f13ff5373631 (patch)
treeef14bdb81d17c86c0589be46e2df526fa4dccde9 /locale/programs
parent96d5c5da1ddd021a4b8fddda8799311e2051696b (diff)
downloadglibc-8a6537b001828486c139509534c4f13ff5373631.tar.gz
glibc-8a6537b001828486c139509534c4f13ff5373631.tar.xz
glibc-8a6537b001828486c139509534c4f13ff5373631.zip
* locale/programs/charmap.c (charmap_read): Add new parameter. It
	tells us when not finding a charmap file is an error.
	* locale/programs/charmap.h: Adjust charmap_read prototype.
	* iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
	cannot find a charmap.
	* locale/programs/localedef.c (main): Adjust charmap_read call.
Diffstat (limited to 'locale/programs')
-rw-r--r--locale/programs/charmap.c5
-rw-r--r--locale/programs/charmap.h5
-rw-r--r--locale/programs/localedef.c2
3 files changed, 7 insertions, 5 deletions
diff --git a/locale/programs/charmap.c b/locale/programs/charmap.c
index e56b0be81c..52a69de4b0 100644
--- a/locale/programs/charmap.c
+++ b/locale/programs/charmap.c
@@ -86,7 +86,8 @@ cmlr_open (const char *directory, const char *name, kw_hash_fct_t hf)
 }
 
 struct charmap_t *
-charmap_read (const char *filename, int verbose, int be_quiet, int use_default)
+charmap_read (const char *filename, int verbose, int error_not_found,
+	      int be_quiet, int use_default)
 {
   struct charmap_t *result = NULL;
 
@@ -132,7 +133,7 @@ charmap_read (const char *filename, int verbose, int be_quiet, int use_default)
       if (cmfile != NULL)
 	result = parse_charmap (cmfile, verbose, be_quiet);
 
-      if (result == NULL && !be_quiet)
+      if (result == NULL && error_not_found)
 	WITH_CUR_LOCALE (error (0, errno, _("\
 character map file `%s' not found"), filename));
     }
diff --git a/locale/programs/charmap.h b/locale/programs/charmap.h
index a3f31d6333..fd711f2d11 100644
--- a/locale/programs/charmap.h
+++ b/locale/programs/charmap.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996-1999, 2001, 2003, 2005 Free Software Foundation, Inc.
+/* Copyright (C) 1996-1999,2001,2003,2005,2006 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@gnu.org>, 1996.
 
@@ -69,7 +69,8 @@ extern bool enc_not_ascii_compatible;
 
 /* Prototypes for charmap handling functions.  */
 extern struct charmap_t *charmap_read (const char *filename, int verbose,
-				       int be_quiet, int use_default);
+				       int error_not_found, int be_quiet,
+				       int use_default);
 
 /* Return the value stored under the given key in the hashing table.  */
 extern struct charseq *charmap_find_value (const struct charmap_t *charmap,
diff --git a/locale/programs/localedef.c b/locale/programs/localedef.c
index f705f34a75..5df07e94c6 100644
--- a/locale/programs/localedef.c
+++ b/locale/programs/localedef.c
@@ -243,7 +243,7 @@ main (int argc, char *argv[])
 FATAL: system does not define `_POSIX2_LOCALEDEF'")));
 
   /* Process charmap file.  */
-  charmap = charmap_read (charmap_file, verbose, be_quiet, 1);
+  charmap = charmap_read (charmap_file, verbose, 1, be_quiet, 1);
 
   /* Add the first entry in the locale list.  */
   memset (&global, '\0', sizeof (struct localedef_t));