diff options
author | Ulrich Drepper <drepper@redhat.com> | 2010-04-04 22:48:55 -0700 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2010-04-04 22:48:55 -0700 |
commit | 247fdc8ee68cf49cd808becce56b2e923b4f776b (patch) | |
tree | 8e6ca996e63c1ed25657e78e2f2ec0e94fe43d81 /posix/getopt.c | |
parent | 2cd9670885d32eed6f4de12ddbeb2a9d049f198e (diff) | |
download | glibc-247fdc8ee68cf49cd808becce56b2e923b4f776b.zip glibc-247fdc8ee68cf49cd808becce56b2e923b4f776b.tar.gz glibc-247fdc8ee68cf49cd808becce56b2e923b4f776b.tar.bz2 |
Fix printing error messages in getopt.
Diffstat (limited to 'posix/getopt.c')
-rw-r--r-- | posix/getopt.c | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/posix/getopt.c b/posix/getopt.c index a7f0b54..88acff0 100644 --- a/posix/getopt.c +++ b/posix/getopt.c @@ -2,7 +2,8 @@ NOTE: getopt is part of the C library, so if you don't know what "Keep this file name-space clean" means, talk to drepper@gnu.org before changing it! - Copyright (C) 1987-1996,1998-2004,2008,2009 Free Software Foundation, Inc. + Copyright (C) 1987-1996,1998-2004,2008,2009,2010 + Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -679,8 +680,8 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, char *buf; if (__asprintf (&buf, _("\ -%s: option '%s' requires an argument\n"), - argv[0], argv[d->optind - 1]) >= 0) +%s: option '--%s' requires an argument\n"), + argv[0], pfound->name) >= 0) { _IO_flockfile (stderr); @@ -697,8 +698,8 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, } #else fprintf (stderr, - _("%s: option '%s' requires an argument\n"), - argv[0], argv[d->optind - 1]); + _("%s: option '--%s' requires an argument\n"), + argv[0], pfound->name); #endif } d->__nextchar += strlen (d->__nextchar); @@ -922,7 +923,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, char *buf; if (__asprintf (&buf, _("%s: option '-W %s' is ambiguous\n"), - argv[0], argv[d->optind]) >= 0) + argv[0], d->optarg) >= 0) { _IO_flockfile (stderr); @@ -938,7 +939,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, } #else fprintf (stderr, _("%s: option '-W %s' is ambiguous\n"), - argv[0], argv[d->optind]); + argv[0], d->optarg); #endif } d->__nextchar += strlen (d->__nextchar); @@ -1001,8 +1002,8 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, char *buf; if (__asprintf (&buf, _("\ -%s: option '%s' requires an argument\n"), - argv[0], argv[d->optind - 1]) >= 0) +%s: option '-W %s' requires an argument\n"), + argv[0], pfound->name) >= 0) { _IO_flockfile (stderr); @@ -1018,9 +1019,9 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, free (buf); } #else - fprintf (stderr, - _("%s: option '%s' requires an argument\n"), - argv[0], argv[d->optind - 1]); + fprintf (stderr, _("\ +%s: option '-W %s' requires an argument\n"), + argv[0], pfound->name); #endif } d->__nextchar += strlen (d->__nextchar); |