about summary refs log tree commit diff
path: root/iconv/iconv_prog.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-02-04 05:49:00 +0000
committerUlrich Drepper <drepper@redhat.com>2001-02-04 05:49:00 +0000
commite4060100b5525aaa0372e09a359ea9903d6ef380 (patch)
tree0b25af41b03bf164c2c4e4221a24fa977b332244 /iconv/iconv_prog.c
parent87808f61ac33bfec74ed8ba1d06026b0833fa788 (diff)
downloadglibc-e4060100b5525aaa0372e09a359ea9903d6ef380.tar.gz
glibc-e4060100b5525aaa0372e09a359ea9903d6ef380.tar.xz
glibc-e4060100b5525aaa0372e09a359ea9903d6ef380.zip
(main): If -f or -t argument is missing use charset of the current locale.
Diffstat (limited to 'iconv/iconv_prog.c')
-rw-r--r--iconv/iconv_prog.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/iconv/iconv_prog.c b/iconv/iconv_prog.c
index 8776192e37..3c7851f7a5 100644
--- a/iconv/iconv_prog.c
+++ b/iconv/iconv_prog.c
@@ -19,11 +19,13 @@
    Boston, MA 02111-1307, USA.  */
 
 #include <argp.h>
+#include <assert.h>
 #include <ctype.h>
 #include <errno.h>
 #include <error.h>
 #include <fcntl.h>
 #include <iconv.h>
+#include <langinfo.h>
 #include <locale.h>
 #include <search.h>
 #include <stdio.h>
@@ -131,16 +133,20 @@ main (int argc, char *argv[])
       print_known_names ();
       exit (EXIT_SUCCESS);
     }
-
-  /* If either the from- or to-code is not specified this is an error
-     since we do not know what to do.  */
-  if (from_code == NULL && to_code == NULL)
-    error (EXIT_FAILURE, 0,
-	   _("neither original nor target encoding specified"));
   if (from_code == NULL)
-    error (EXIT_FAILURE, 0, _("original encoding not specified using `-f'"));
+    {
+      /* The Unix standard says that in this case the charset of the current
+	 locale is used.  */
+      from_code = nl_langinfo (CODESET);
+      assert (from_code != NULL);
+    }
   if (to_code == NULL)
-    error (EXIT_FAILURE, 0, _("target encoding not specified using `-t'"));
+    {
+      /* The Unix standard says that in this case the charset of the current
+	 locale is used.  */
+      to_code = nl_langinfo (CODESET);
+      assert (to_code != NULL);
+    }
 
   /* If we have to ignore errors make sure we use the appropriate name for
      the to-character-set.  */