ports/www/iridium/files/patch-base_debug_stack__trace__posix.cc
2018-08-18 14:21:02 +00:00

40 lines
1.2 KiB
C++

--- base/debug/stack_trace_posix.cc.orig 2017-07-25 21:04:48.000000000 +0200
+++ base/debug/stack_trace_posix.cc 2017-08-02 18:45:42.071358000 +0200
@@ -34,7 +34,7 @@
#include <AvailabilityMacros.h>
#endif
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_BSD)
#include "base/debug/proc_maps_linux.h"
#endif
@@ -574,6 +574,11 @@
// for the modules that are loaded in the current process.
// Returns true on success.
bool CacheMemoryRegions() {
+#if defined(OS_BSD)
+ // TODO (rene) avoid link error, implement something?
+ NOTIMPLEMENTED();
+ return false;
+#else
// Reads /proc/self/maps.
std::string contents;
if (!ReadProcMaps(&contents)) {
@@ -589,6 +594,7 @@
is_initialized_ = true;
return true;
+#endif
}
// Opens all object files and caches their file descriptors.
@@ -721,7 +727,7 @@
// NOTE: This code MUST be async-signal safe (it's used by in-process
// stack dumping signal handler). NO malloc or stdio is allowed here.
-#if !defined(__UCLIBC__) && !defined(_AIX)
+#if !defined(__UCLIBC__) && !defined(_AIX) && !defined(OS_BSD)
count = std::min(arraysize(trace_), count);
// Though the backtrace API man page does not list any possible negative