Index: runtime/vm/stack_frame.h |
diff --git a/runtime/vm/stack_frame.h b/runtime/vm/stack_frame.h |
index 1d5c6100518347c0190b12e5511be46f17e43b6a..a8da1708f2bea1cf78809c82972729d1fea33997 100644 |
--- a/runtime/vm/stack_frame.h |
+++ b/runtime/vm/stack_frame.h |
@@ -212,10 +212,12 @@ class StackFrameIterator : public ValueObject { |
// Iterators for iterating over all frames from the last ExitFrame to the |
// first EntryFrame. |
explicit StackFrameIterator(bool validate, |
- Thread* thread = Thread::Current()); |
+ Thread* thread, |
+ bool allow_iterating_other_thread); |
StackFrameIterator(uword last_fp, |
bool validate, |
- Thread* thread = Thread::Current()); |
+ Thread* thread, |
+ bool allow_iterating_other_thread); |
#if !defined(TARGET_ARCH_DBC) |
// Iterator for iterating over all frames from the current frame (given by its |
@@ -224,7 +226,8 @@ class StackFrameIterator : public ValueObject { |
uword sp, |
uword pc, |
bool validate, |
- Thread* thread = Thread::Current()); |
+ Thread* thread, |
+ bool allow_iterating_other_thread); |
#endif |
// Checks if a next frame exists. |
@@ -302,17 +305,30 @@ class StackFrameIterator : public ValueObject { |
// isolate given is not running concurrently on another thread. |
class DartFrameIterator : public ValueObject { |
public: |
- explicit DartFrameIterator(Thread* thread = Thread::Current()) |
- : frames_(StackFrameIterator::kDontValidateFrames, thread) {} |
- explicit DartFrameIterator(uword last_fp, Thread* thread = Thread::Current()) |
- : frames_(last_fp, StackFrameIterator::kDontValidateFrames, thread) {} |
+ explicit DartFrameIterator(Thread* thread, bool allow_iterating_other_thread) |
+ : frames_(StackFrameIterator::kDontValidateFrames, |
+ thread, |
+ allow_iterating_other_thread) {} |
+ explicit DartFrameIterator(uword last_fp, |
+ Thread* thread, |
+ bool allow_iterating_other_thread) |
+ : frames_(last_fp, |
+ StackFrameIterator::kDontValidateFrames, |
+ thread, |
+ allow_iterating_other_thread) {} |
#if !defined(TARGET_ARCH_DBC) |
DartFrameIterator(uword fp, |
uword sp, |
uword pc, |
- Thread* thread = Thread::Current()) |
- : frames_(fp, sp, pc, StackFrameIterator::kDontValidateFrames, thread) {} |
+ Thread* thread, |
+ bool allow_iterating_other_thread) |
+ : frames_(fp, |
+ sp, |
+ pc, |
+ StackFrameIterator::kDontValidateFrames, |
+ thread, |
+ allow_iterating_other_thread) {} |
#endif |
// Get next dart frame. |