1998-02-27  Ulrich Drepper  <drepper@cygnus.com>

	* posix/execlp.c: POSIX.1 says that argv[0] *should* be provided,
	but does not require it.  Handle missing argv[] values gracefully.
	* posix/execl.c: Likewise.
	* posix/execle.c: Likewise.
This commit is contained in:
Ulrich Drepper 1998-02-27 10:19:10 +00:00
parent 9eb2730eab
commit b0df72f4fb
5 changed files with 17 additions and 13 deletions

View File

@ -1,3 +1,10 @@
1998-02-27 Ulrich Drepper <drepper@cygnus.com>
* posix/execlp.c: POSIX.1 says that argv[0] *should* be provided,
but does not require it. Handle missing argv[] values gracefully.
* posix/execl.c: Likewise.
* posix/execle.c: Likewise.
1998-02-25 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/libm-ieee754/s_isnanl.c: Ignore the explicit integer

View File

@ -1,6 +1,6 @@
#! /bin/sh
# Copyright (C) 1996, 1997 Free Software Foundation, Inc.
# Copyright (C) 1996, 1997, 1998 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

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1992, 1994, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1991, 1992, 1994, 1997, 1998 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
@ -39,8 +39,8 @@ execl (const char *path, const char *arg, ...)
argv[0] = arg;
va_start (args, arg);
i = 1;
do
i = 0;
while (argv[i++] != NULL)
{
if (i == argv_max)
{
@ -62,7 +62,6 @@ execl (const char *path, const char *arg, ...)
argv[i] = va_arg (args, const char *);
}
while (argv[i++] != NULL);
va_end (args);
return __execve (path, (char *const *) argv, __environ);

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1991, 1997, 1998 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
@ -35,8 +35,8 @@ execle (const char *path, const char *arg, ...)
argv[0] = arg;
va_start(args, arg);
i = 1;
do
i = 0;
while (argv[i++] != NULL)
{
if (i == argv_max)
{
@ -58,7 +58,6 @@ execle (const char *path, const char *arg, ...)
argv[i] = va_arg (args, const char *);
}
while (argv[i++] != NULL);
envp = va_arg(args, const char *const *);
va_end(args);

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1993, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1991, 1993, 1996, 1997, 1998 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
@ -36,8 +36,8 @@ execlp (const char *file, const char *arg, ...)
argv[0] = arg;
va_start (args, arg);
i = 1;
do
i = 0;
while (argv[i++] != NULL)
{
if (i == argv_max)
{
@ -59,7 +59,6 @@ execlp (const char *file, const char *arg, ...)
argv[i] = va_arg (args, const char *);
}
while (argv[i++] != NULL);
va_end (args);
return execvp (file, (char *const *) argv);