diff options
author | Christopher Ferris <cferris@google.com> | 2018-01-26 14:26:13 -0800 |
---|---|---|
committer | Christopher Ferris <cferris@google.com> | 2018-01-26 14:26:13 -0800 |
commit | 8fe5836c02d3e0399c2246e67fc33ff5d4aa0032 (patch) | |
tree | d59c2e6ddb576cbd497b50b5622e48eb963cee68 /libbacktrace | |
parent | 969539c5c80fae62fc92553766c22bd5952dc2f2 (diff) | |
download | system_core-8fe5836c02d3e0399c2246e67fc33ff5d4aa0032.tar.gz system_core-8fe5836c02d3e0399c2246e67fc33ff5d4aa0032.tar.bz2 system_core-8fe5836c02d3e0399c2246e67fc33ff5d4aa0032.zip |
Fix frame numbering regression.
Test: All unit tests now pass.
Change-Id: I280dfbbed3f835c826788b80ff4abb22bea7dc59
Diffstat (limited to 'libbacktrace')
-rw-r--r-- | libbacktrace/UnwindStack.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libbacktrace/UnwindStack.cpp b/libbacktrace/UnwindStack.cpp index c5dd45b86..c5d498cb8 100644 --- a/libbacktrace/UnwindStack.cpp +++ b/libbacktrace/UnwindStack.cpp @@ -139,8 +139,8 @@ bool Backtrace::Unwind(unwindstack::Regs* regs, BacktraceMap* back_map, // #8 pc 0015fa20 core.vdex java.util.Arrays.binarySearch+8 // #9 pc 0039a1ef libartd.so art::interpreter::Execute+719 if (frame->dex_pc != 0) { - backtrace_frame_data_t* dex_frame = &frames->at(cur_frame++); - dex_frame->num = cur_frame; + backtrace_frame_data_t* dex_frame = &frames->at(cur_frame); + dex_frame->num = cur_frame++; dex_frame->pc = frame->dex_pc; dex_frame->rel_pc = frame->dex_pc; dex_frame->sp = frame->sp; @@ -149,9 +149,9 @@ bool Backtrace::Unwind(unwindstack::Regs* regs, BacktraceMap* back_map, FillInDexFrame(stack_map, frame->dex_pc, dex_frame); } - backtrace_frame_data_t* back_frame = &frames->at(cur_frame++); + backtrace_frame_data_t* back_frame = &frames->at(cur_frame); - back_frame->num = cur_frame; + back_frame->num = cur_frame++; back_frame->rel_pc = frame->rel_pc; back_frame->pc = frame->pc; |