diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | iconv/iconv_prog.c | 24 |
2 files changed, 23 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index ef4e0c0d1c..0dde120a30 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2001-04-20 Ulrich Drepper <drepper@redhat.com> + * iconv/iconv_prog.c (print_known_names): If printing goes not to + a tty print in a more machine-friendly way. + * sysdeps/ieee754/ldbl-128/e_asinl.c: New file. Contributed by Stephen L Moshier <moshier@mediaone.net>. diff --git a/iconv/iconv_prog.c b/iconv/iconv_prog.c index 24521c0631..c1f9984700 100644 --- a/iconv/iconv_prog.c +++ b/iconv/iconv_prog.c @@ -586,7 +586,7 @@ insert_print_list (const void *nodep, VISIT value, int level) } static void -do_print (const void *nodep, VISIT value, int level) +do_print_human (const void *nodep, VISIT value, int level) { if (value == leaf || value == postorder) { @@ -628,6 +628,17 @@ do_print (const void *nodep, VISIT value, int level) } static void +do_print (const void *nodep, VISIT value, int level) +{ + if (value == leaf || value == postorder) + { + const char *s = *(const char **) nodep; + + puts (s); + } +} + +static void internal_function add_known_names (struct gconv_module *node) { @@ -672,8 +683,13 @@ listed with several different names (aliases).\n\n "), stdout); /* Now print the collected names. */ column = 2; - twalk (printlist, do_print); + if (isatty (fileno (stdout))) + { + twalk (printlist, do_print_human); - if (column != 0) - puts (""); + if (column != 0) + puts (""); + } + else + twalk (printlist, do_print); } |