diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-09-12 22:37:19 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-09-12 22:37:19 +0000 |
commit | 8dab36a1198f257efaf7ddf71b768914ed50c898 (patch) | |
tree | 08bcf658856536df147f2f9d0e5b5b04ecaae6cc /posix/getopt.c | |
parent | 6fee33627549f407f3621fde054d495285e23af5 (diff) | |
download | glibc-8dab36a1198f257efaf7ddf71b768914ed50c898.tar glibc-8dab36a1198f257efaf7ddf71b768914ed50c898.tar.gz glibc-8dab36a1198f257efaf7ddf71b768914ed50c898.tar.bz2 glibc-8dab36a1198f257efaf7ddf71b768914ed50c898.zip |
Update.
2003-09-12 Ulrich Drepper <drepper@redhat.com>
* grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
* inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
* io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
Likewise.
* misc/Makefile (CFLAGS-err.c): Likewise.
* posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
CFLAGS-glob64.c): Likewise.
* pwd/Makefile (CFLAGS-getpw.c): Likewise.
* shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
* stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
* sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
* stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
* libio/stdio.h: Remove __THROW from cuserid prototype.
* locale/loadarchive.c: Use only non-cancelable interfaces.
* resolv/herror.c (herror): Likewise.
* malloc/hooks.c: Before using IO stream mark stream so it uses
only non-cancelable interfaces.
* malloc/malloc.c: Likewise.
* posix/getopt.c: Likewise.
2003-09-11 Jakub Jelinek <jakub@redhat.com>
* Makerules (LDFLAGS-c.so): Remove -u __register_frame.
2003-09-12 Ulrich Drepper <drepper@redhat.com>
* stdio-common/stdio_ext.h: Mark most functions with __THROW.
* misc/err.h: Remove __THROW from all prototypes.
* posix/getopt.h (__THROW): Define if not already defined. Add
__THROW to the getopt functions.
2003-09-11 Ulrich Drepper <drepper@redhat.com>
* io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
(CFLAGS-fts.c): Likewise.
* io/fcntl.h: Remove __THROW from lockf prototypes.
* io/fts.h: Remove most __THROW.
Diffstat (limited to 'posix/getopt.c')
-rw-r--r-- | posix/getopt.c | 85 |
1 files changed, 84 insertions, 1 deletions
diff --git a/posix/getopt.c b/posix/getopt.c index 289d137e20..5336410eed 100644 --- a/posix/getopt.c +++ b/posix/getopt.c @@ -2,7 +2,7 @@ NOTE: getopt is now 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,88,89,90,91,92,93,94,95,96,98,99,2000,2001,2002 + Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001,2002,2003 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -692,12 +692,19 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only) if (__asprintf (&buf, _("%s: option `%s' is ambiguous\n"), argv[0], argv[optind]) >= 0) { + _IO_flockfile (stderr); + + int old_flags2 = ((_IO_FILE *) stderr)->_flags2; + ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; if (_IO_fwide (stderr, 0) > 0) __fwprintf (stderr, L"%s", buf); else fputs (buf, stderr); + ((_IO_FILE *) stderr)->_flags2 = old_flags2; + _IO_funlockfile (stderr); + free (buf); } #else @@ -761,11 +768,20 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only) #if defined _LIBC && defined USE_IN_LIBIO if (n >= 0) { + _IO_flockfile (stderr); + + int old_flags2 = ((_IO_FILE *) stderr)->_flags2; + ((_IO_FILE *) stderr)->_flags2 + |= _IO_FLAGS2_NOTCANCEL; + if (_IO_fwide (stderr, 0) > 0) __fwprintf (stderr, L"%s", buf); else fputs (buf, stderr); + ((_IO_FILE *) stderr)->_flags2 = old_flags2; + _IO_funlockfile (stderr); + free (buf); } #endif @@ -792,11 +808,20 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only) %s: option `%s' requires an argument\n"), argv[0], argv[optind - 1]) >= 0) { + _IO_flockfile (stderr); + + int old_flags2 = ((_IO_FILE *) stderr)->_flags2; + ((_IO_FILE *) stderr)->_flags2 + |= _IO_FLAGS2_NOTCANCEL; + if (_IO_fwide (stderr, 0) > 0) __fwprintf (stderr, L"%s", buf); else fputs (buf, stderr); + ((_IO_FILE *) stderr)->_flags2 = old_flags2; + _IO_funlockfile (stderr); + free (buf); } #else @@ -861,11 +886,19 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only) #if defined _LIBC && defined USE_IN_LIBIO if (n >= 0) { + _IO_flockfile (stderr); + + int old_flags2 = ((_IO_FILE *) stderr)->_flags2; + ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; + if (_IO_fwide (stderr, 0) > 0) __fwprintf (stderr, L"%s", buf); else fputs (buf, stderr); + ((_IO_FILE *) stderr)->_flags2 = old_flags2; + _IO_funlockfile (stderr); + free (buf); } #endif @@ -919,11 +952,19 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only) #if defined _LIBC && defined USE_IN_LIBIO if (n >= 0) { + _IO_flockfile (stderr); + + int old_flags2 = ((_IO_FILE *) stderr)->_flags2; + ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; + if (_IO_fwide (stderr, 0) > 0) __fwprintf (stderr, L"%s", buf); else fputs (buf, stderr); + ((_IO_FILE *) stderr)->_flags2 = old_flags2; + _IO_funlockfile (stderr); + free (buf); } #endif @@ -962,11 +1003,19 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only) _("%s: option requires an argument -- %c\n"), argv[0], c) >= 0) { + _IO_flockfile (stderr); + + int old_flags2 = ((_IO_FILE *) stderr)->_flags2; + ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; + if (_IO_fwide (stderr, 0) > 0) __fwprintf (stderr, L"%s", buf); else fputs (buf, stderr); + ((_IO_FILE *) stderr)->_flags2 = old_flags2; + _IO_funlockfile (stderr); + free (buf); } #else @@ -1025,11 +1074,19 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only) if (__asprintf (&buf, _("%s: option `-W %s' is ambiguous\n"), argv[0], argv[optind]) >= 0) { + _IO_flockfile (stderr); + + int old_flags2 = ((_IO_FILE *) stderr)->_flags2; + ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; + if (_IO_fwide (stderr, 0) > 0) __fwprintf (stderr, L"%s", buf); else fputs (buf, stderr); + ((_IO_FILE *) stderr)->_flags2 = old_flags2; + _IO_funlockfile (stderr); + free (buf); } #else @@ -1061,11 +1118,20 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only) %s: option `-W %s' doesn't allow an argument\n"), argv[0], pfound->name) >= 0) { + _IO_flockfile (stderr); + + int old_flags2 = ((_IO_FILE *) stderr)->_flags2; + ((_IO_FILE *) stderr)->_flags2 + |= _IO_FLAGS2_NOTCANCEL; + if (_IO_fwide (stderr, 0) > 0) __fwprintf (stderr, L"%s", buf); else fputs (buf, stderr); + ((_IO_FILE *) stderr)->_flags2 = old_flags2; + _IO_funlockfile (stderr); + free (buf); } #else @@ -1094,11 +1160,20 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only) %s: option `%s' requires an argument\n"), argv[0], argv[optind - 1]) >= 0) { + _IO_flockfile (stderr); + + int old_flags2 = ((_IO_FILE *) stderr)->_flags2; + ((_IO_FILE *) stderr)->_flags2 + |= _IO_FLAGS2_NOTCANCEL; + if (_IO_fwide (stderr, 0) > 0) __fwprintf (stderr, L"%s", buf); else fputs (buf, stderr); + ((_IO_FILE *) stderr)->_flags2 = old_flags2; + _IO_funlockfile (stderr); + free (buf); } #else @@ -1160,11 +1235,19 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only) %s: option requires an argument -- %c\n"), argv[0], c) >= 0) { + _IO_flockfile (stderr); + + int old_flags2 = ((_IO_FILE *) stderr)->_flags2; + ((_IO_FILE *) stderr)->_flags2 |= _IO_FLAGS2_NOTCANCEL; + if (_IO_fwide (stderr, 0) > 0) __fwprintf (stderr, L"%s", buf); else fputs (buf, stderr); + ((_IO_FILE *) stderr)->_flags2 = old_flags2; + _IO_funlockfile (stderr); + free (buf); } #else |