diff options
Diffstat (limited to 'posix')
-rw-r--r-- | posix/getopt_init.c | 12 | ||||
-rw-r--r-- | posix/glob.h | 12 | ||||
-rw-r--r-- | posix/wordexp.c | 2 |
3 files changed, 11 insertions, 15 deletions
diff --git a/posix/getopt_init.c b/posix/getopt_init.c index d78e30f7de..6fddc8b26f 100644 --- a/posix/getopt_init.c +++ b/posix/getopt_init.c @@ -32,8 +32,6 @@ /* Variable to synchronize work. */ char *__getopt_nonoption_flags; -extern pid_t __libc_pid; - /* Remove the environment variable "_<PID>_GNU_nonoption_argv_flags_" if it is still available. If the getopt functions are also used in the @@ -51,15 +49,11 @@ __getopt_clean_environment (char **env) char *cp, **ep; size_t len; - /* Generate name of the environment variable. We must know the PID - and we must not use `sprintf'. */ - if (__libc_pid == 0xf00baa) - __libc_pid = __getpid (); - - /* Construct "_<PID>_GNU_nonoption_argv_flags_=" string. */ + /* Construct the "_<PID>_GNU_nonoption_argv_flags_=" string. We must + not use `sprintf'. */ cp = memcpy (&var[sizeof (var) - sizeof (envvar_tail)], envvar_tail, sizeof (envvar_tail)); - cp = _itoa_word (__libc_pid, cp, 10, 0); + cp = _itoa_word (__getpid (), cp, 10, 0); *--cp = '_'; len = (var + sizeof (var) - 1) - cp; diff --git a/posix/glob.h b/posix/glob.h index fd8255cd53..0b7808b15c 100644 --- a/posix/glob.h +++ b/posix/glob.h @@ -26,6 +26,7 @@ extern "C" { #if defined __cplusplus || (defined __STDC__ && __STDC__) || defined WINDOWS32 # undef __P # define __P(protos) protos +# define __PMT(protos) protos # define __ptr_t void * # if !defined __GNUC__ || __GNUC__ < 2 # undef __const @@ -34,6 +35,7 @@ extern "C" { #else /* Not C++ or ANSI C. */ # undef __P # define __P(protos) () +# define __PMT(protos) () # undef __const # define __const # define __ptr_t char * @@ -99,11 +101,11 @@ typedef struct /* If the GLOB_ALTDIRFUNC flag is set, the following functions are used instead of the normal file access functions. */ - void (*gl_closedir) __P ((void *)); - struct dirent *(*gl_readdir) __P ((void *)); - __ptr_t (*gl_opendir) __P ((__const char *)); - int (*gl_lstat) __P ((__const char *, struct stat *)); - int (*gl_stat) __P ((__const char *, struct stat *)); + void (*gl_closedir) __PMT ((void *)); + struct dirent *(*gl_readdir) __PMT ((void *)); + __ptr_t (*gl_opendir) __PMT ((__const char *)); + int (*gl_lstat) __PMT ((__const char *, struct stat *)); + int (*gl_stat) __PMT ((__const char *, struct stat *)); } glob_t; /* Do glob searching for PATTERN, placing results in PGLOB. diff --git a/posix/wordexp.c b/posix/wordexp.c index 265ddd8a87..4991406ad1 100644 --- a/posix/wordexp.c +++ b/posix/wordexp.c @@ -1343,7 +1343,7 @@ envsubst: /* Start a new word with the last parameter. */ *word = w_newword (word_length, max_length); - value = __strdup (__libc_argv[p]); + value = __libc_argv[p]; } else { |