提交 3b00c5a7 编写于 作者: M martin

6866719: Rename execvpe to avoid symbol clash with glibc 2.10

Reviewed-by: darcy
上级 fb246063
...@@ -447,14 +447,16 @@ execve_with_shell_fallback(const char *file, ...@@ -447,14 +447,16 @@ execve_with_shell_fallback(const char *file,
} }
/** /**
* execvpe should have been included in the Unix standards. * 'execvpe' should have been included in the Unix standards,
* execvpe is identical to execvp, except that the child environment is * and is a GNU extension in glibc 2.10.
*
* JDK_execvpe is identical to execvp, except that the child environment is
* specified via the 3rd argument instead of being inherited from environ. * specified via the 3rd argument instead of being inherited from environ.
*/ */
static void static void
execvpe(const char *file, JDK_execvpe(const char *file,
const char *argv[], const char *argv[],
const char *const envp[]) const char *const envp[])
{ {
/* This is one of the rare times it's more portable to declare an /* This is one of the rare times it's more portable to declare an
* external symbol explicitly, rather than via a system header. * external symbol explicitly, rather than via a system header.
...@@ -644,7 +646,7 @@ childProcess(void *arg) ...@@ -644,7 +646,7 @@ childProcess(void *arg)
if (fcntl(FAIL_FILENO, F_SETFD, FD_CLOEXEC) == -1) if (fcntl(FAIL_FILENO, F_SETFD, FD_CLOEXEC) == -1)
goto WhyCantJohnnyExec; goto WhyCantJohnnyExec;
execvpe(p->argv[0], p->argv, p->envv); JDK_execvpe(p->argv[0], p->argv, p->envv);
WhyCantJohnnyExec: WhyCantJohnnyExec:
/* We used to go to an awful lot of trouble to predict whether the /* We used to go to an awful lot of trouble to predict whether the
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册