aboutsummaryrefslogtreecommitdiff
path: root/posix
diff options
context:
space:
mode:
Diffstat (limited to 'posix')
-rw-r--r--posix/getopt_init.c12
-rw-r--r--posix/glob.h12
-rw-r--r--posix/wordexp.c2
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
{