diff options
Diffstat (limited to 'lib/sanitizer_common/sanitizer_symbolizer_mac.cc')
-rw-r--r-- | lib/sanitizer_common/sanitizer_symbolizer_mac.cc | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/sanitizer_common/sanitizer_symbolizer_mac.cc b/lib/sanitizer_common/sanitizer_symbolizer_mac.cc index e11bf9cc9..c2397ef98 100644 --- a/lib/sanitizer_common/sanitizer_symbolizer_mac.cc +++ b/lib/sanitizer_common/sanitizer_symbolizer_mac.cc @@ -16,6 +16,7 @@ #if SANITIZER_MAC #include "sanitizer_allocator_internal.h" +#include "sanitizer_mac.h" #include "sanitizer_symbolizer_mac.h" namespace __sanitizer { @@ -57,7 +58,14 @@ class AtosSymbolizerProcess : public SymbolizerProcess { char pid_str[16]; internal_snprintf(pid_str, sizeof(pid_str), "%d", parent_pid_); - execl(path_to_binary, path_to_binary, "-p", pid_str, (char *)0); + if (GetMacosVersion() == MACOS_VERSION_MAVERICKS) { + // On Mavericks atos prints a deprecation warning which we suppress by + // passing -d. The warning isn't present on other OSX versions, even the + // newer ones. + execl(path_to_binary, path_to_binary, "-p", pid_str, "-d", (char *)0); + } else { + execl(path_to_binary, path_to_binary, "-p", pid_str, (char *)0); + } } pid_t parent_pid_; |