diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2012-06-27 12:48:46 +0000 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2012-06-27 12:48:46 +0000 |
| commit | f8b7a8dc0877a867ac7bff13c423b2ef0d5d1bcd (patch) | |
| tree | e004a7b1c55e7b65a0ac1c482395a0bb87e0935f | |
| parent | b15b37f73ad1ab87012d2be3503e2b05e2b3c238 (diff) | |
| download | bcm5719-llvm-f8b7a8dc0877a867ac7bff13c423b2ef0d5d1bcd.tar.gz bcm5719-llvm-f8b7a8dc0877a867ac7bff13c423b2ef0d5d1bcd.zip | |
tsan: close all file descriptors after fork()
llvm-svn: 159263
| -rw-r--r-- | compiler-rt/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler-rt/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc b/compiler-rt/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc index a39571e38e9..03dd51a6fb1 100644 --- a/compiler-rt/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc +++ b/compiler-rt/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc @@ -69,6 +69,8 @@ static void NOINLINE InitModule(ModuleDesc *m) { internal_close(outfd[1]); internal_close(infd[0]); internal_close(infd[1]); + for (int fd = getdtablesize(); fd > 2; fd--) + internal_close(fd); execl("/usr/bin/addr2line", "/usr/bin/addr2line", "-Cfe", m->fullname, 0); _exit(0); } else if (pid < 0) { |

