aboutsummaryrefslogtreecommitdiff
path: root/src/processor
diff options
context:
space:
mode:
Diffstat (limited to 'src/processor')
-rw-r--r--src/processor/stackwalker_address_list.cc2
-rw-r--r--src/processor/stackwalker_address_list_unittest.cc8
2 files changed, 8 insertions, 2 deletions
diff --git a/src/processor/stackwalker_address_list.cc b/src/processor/stackwalker_address_list.cc
index fdc9b9ae..55656032 100644
--- a/src/processor/stackwalker_address_list.cc
+++ b/src/processor/stackwalker_address_list.cc
@@ -85,7 +85,7 @@ StackFrame* StackwalkerAddressList::GetCallerFrame(const CallStack* stack,
// explicitly provided.
StackFrame* frame = new StackFrame();
frame->instruction = frames_[frame_index];
- frame->trust = StackFrame::FRAME_TRUST_CONTEXT;
+ frame->trust = StackFrame::FRAME_TRUST_PREWALKED;
return frame;
}
diff --git a/src/processor/stackwalker_address_list_unittest.cc b/src/processor/stackwalker_address_list_unittest.cc
index 8af63fb1..2eb36cd7 100644
--- a/src/processor/stackwalker_address_list_unittest.cc
+++ b/src/processor/stackwalker_address_list_unittest.cc
@@ -106,8 +106,14 @@ class StackwalkerAddressListTest : public testing::Test {
void CheckCallStack(const CallStack& call_stack) {
const std::vector<StackFrame*>* frames = call_stack.frames();
ASSERT_EQ(arraysize(kDummyFrames), frames->size());
- for (size_t i = 0; i < arraysize(kDummyFrames); ++i)
+ for (size_t i = 0; i < arraysize(kDummyFrames); ++i) {
ASSERT_EQ(kDummyFrames[i], frames->at(i)->instruction);
+ if (i == 0) {
+ ASSERT_EQ(StackFrame::FRAME_TRUST_CONTEXT, frames->at(i)->trust);
+ } else {
+ ASSERT_EQ(StackFrame::FRAME_TRUST_PREWALKED, frames->at(i)->trust);
+ }
+ }
ASSERT_EQ(static_cast<const CodeModule*>(&module2), frames->at(0)->module);
ASSERT_EQ(static_cast<const CodeModule*>(&module2), frames->at(1)->module);
ASSERT_EQ(static_cast<const CodeModule*>(&module2), frames->at(2)->module);