diff options
author | Martin Liska <mliska@suse.cz> | 2020-06-01 21:15:18 +0200 |
---|---|---|
committer | Martin Liska <mliska@suse.cz> | 2020-06-02 08:02:07 +0200 |
commit | 3c6331c29f1376ed220246e7dead94bc527a9aa9 (patch) | |
tree | df4288713dd999fd2b0783cf0f82a7a127ed5964 /libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp | |
parent | 2b11374cb8d864dff3792e7c84188ba7e8f136e7 (diff) | |
download | gcc-3c6331c29f1376ed220246e7dead94bc527a9aa9.zip gcc-3c6331c29f1376ed220246e7dead94bc527a9aa9.tar.gz gcc-3c6331c29f1376ed220246e7dead94bc527a9aa9.tar.bz2 |
Libsanitizer: merge from master.
Merged from revision b638b63b99d66786cb37336292604a2ae3490cfd.
The patch successfully bootstraps on x86_64-linux-gnu and
ppc64le-linux-gnu. I also tested ppc64-linux-gnu that exposed:
https://reviews.llvm.org/D80864 (which is fixed on master).
Abidiff looks happy and I made UBSAN and ASAN bootstrap on
x86_64-linux-gnu.
I'm planning to do merge from master twice a year, once now and
next time short before stage1 closes.
I am going to install the patches as merge from master is obvious
and I haven't made anything special.
libsanitizer/ChangeLog:
* MERGE: Merge from master.
Diffstat (limited to 'libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp')
-rw-r--r-- | libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp b/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp index 304b3a0..f920172 100644 --- a/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp +++ b/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp @@ -426,7 +426,8 @@ void AdjustStackSize(void *attr_) { #endif // !SANITIZER_GO pid_t StartSubprocess(const char *program, const char *const argv[], - fd_t stdin_fd, fd_t stdout_fd, fd_t stderr_fd) { + const char *const envp[], fd_t stdin_fd, fd_t stdout_fd, + fd_t stderr_fd) { auto file_closer = at_scope_exit([&] { if (stdin_fd != kInvalidFd) { internal_close(stdin_fd); @@ -469,7 +470,8 @@ pid_t StartSubprocess(const char *program, const char *const argv[], for (int fd = sysconf(_SC_OPEN_MAX); fd > 2; fd--) internal_close(fd); - execv(program, const_cast<char **>(&argv[0])); + internal_execve(program, const_cast<char **>(&argv[0]), + const_cast<char *const *>(envp)); internal__exit(1); } |