summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/sanitizer_common/sanitizer_stacktrace.cc6
-rw-r--r--lib/sanitizer_common/sanitizer_stacktrace.h7
2 files changed, 6 insertions, 7 deletions
diff --git a/lib/sanitizer_common/sanitizer_stacktrace.cc b/lib/sanitizer_common/sanitizer_stacktrace.cc
index 9fe6656f..f67df7e9 100644
--- a/lib/sanitizer_common/sanitizer_stacktrace.cc
+++ b/lib/sanitizer_common/sanitizer_stacktrace.cc
@@ -13,7 +13,6 @@
#include "sanitizer_common.h"
#include "sanitizer_flags.h"
-#include "sanitizer_libc.h"
#include "sanitizer_procmaps.h"
#include "sanitizer_stacktrace.h"
#include "sanitizer_symbolizer.h"
@@ -35,11 +34,6 @@ uptr StackTrace::GetPreviousInstructionPc(uptr pc) {
#endif
}
-void StackTrace::CopyFrom(const uptr *src, uptr src_size) {
- size = Min(src_size, kStackTraceMax);
- internal_memcpy(trace, src, sizeof(trace[0]) * size);
-}
-
static void PrintStackFramePrefix(uptr frame_num, uptr pc) {
Printf(" #%zu 0x%zx", frame_num, pc);
}
diff --git a/lib/sanitizer_common/sanitizer_stacktrace.h b/lib/sanitizer_common/sanitizer_stacktrace.h
index e7e244aa..c191d891 100644
--- a/lib/sanitizer_common/sanitizer_stacktrace.h
+++ b/lib/sanitizer_common/sanitizer_stacktrace.h
@@ -37,7 +37,12 @@ struct StackTrace {
static void PrintStack(const uptr *addr, uptr size, bool symbolize,
SymbolizeCallback symbolize_callback);
- void CopyFrom(const uptr *src, uptr src_size);
+ void CopyFrom(const uptr *src, uptr src_size) {
+ size = src_size;
+ if (size > kStackTraceMax) size = kStackTraceMax;
+ for (uptr i = 0; i < size; i++)
+ trace[i] = src[i];
+ }
void Unwind(uptr max_depth, uptr pc, uptr bp, uptr stack_top,
uptr stack_bottom, bool fast);