Chromium Code Reviews| Index: runtime/vm/exceptions.cc |
| diff --git a/runtime/vm/exceptions.cc b/runtime/vm/exceptions.cc |
| index c2bc393426d38514d201ffa8c52c179585f8d19d..52520c6a1dd49359315e0ce421476e2d6be4f04c 100644 |
| --- a/runtime/vm/exceptions.cc |
| +++ b/runtime/vm/exceptions.cc |
| @@ -6,6 +6,8 @@ |
| #include "platform/address_sanitizer.h" |
| +#include "lib/stacktrace.h" |
| + |
| #include "vm/dart_api_impl.h" |
| #include "vm/dart_entry.h" |
| #include "vm/debugger.h" |
| @@ -19,6 +21,7 @@ |
| #include "vm/symbols.h" |
| #include "vm/tags.h" |
| + |
| namespace dart { |
| DECLARE_FLAG(bool, trace_deoptimization); |
| @@ -369,18 +372,7 @@ static RawField* LookupStackTraceField(const Instance& instance) { |
| RawStackTrace* Exceptions::CurrentStackTrace() { |
| - Zone* zone = Thread::Current()->zone(); |
| - RegularStackTraceBuilder frame_builder(zone); |
| - BuildStackTrace(&frame_builder); |
| - |
| - // Create arrays for code and pc_offset tuples of each frame. |
| - const Array& full_code_array = |
| - Array::Handle(zone, Array::MakeArray(frame_builder.code_list())); |
| - const Array& full_pc_offset_array = |
| - Array::Handle(zone, Array::MakeArray(frame_builder.pc_offset_list())); |
| - const StackTrace& full_stacktrace = StackTrace::Handle( |
| - StackTrace::New(full_code_array, full_pc_offset_array)); |
| - return full_stacktrace.raw(); |
| + return GetStackTraceForException(); |
|
rmacnak
2017/01/26 18:05:57
Inline and remove?
Cutch
2017/01/31 23:45:30
Acknowledged.
|
| } |