| Index: src/frames.cc
|
| diff --git a/src/frames.cc b/src/frames.cc
|
| index 80fe469d2c51d3921cb5e108c2d596afb37880ec..a547890db0681c5b575f230ac5121632074705d6 100644
|
| --- a/src/frames.cc
|
| +++ b/src/frames.cc
|
| @@ -112,8 +112,7 @@ StackFrameIterator::StackFrameIterator(Isolate* isolate,
|
| frame_(NULL), handler_(NULL),
|
| thread_(use_top ? isolate_->thread_local_top() : NULL),
|
| fp_(use_top ? NULL : fp), sp_(sp),
|
| - advance_(use_top ? &StackFrameIterator::AdvanceWithHandler :
|
| - &StackFrameIterator::AdvanceWithoutHandler),
|
| + advance_(&StackFrameIterator::AdvanceWithoutHandler),
|
| can_access_heap_objects_(false) {
|
| if (use_top || fp != NULL) {
|
| Reset();
|
| @@ -299,7 +298,6 @@ void SafeStackFrameIterator::AdvanceOneFrame() {
|
| Address last_sp = last_frame->sp(), last_fp = last_frame->fp();
|
| // Before advancing to the next stack frame, perform pointer validity tests
|
| iteration_done_ = !IsValidFrame(last_frame) ||
|
| - !CanIterateHandles(last_frame, iterator_.handler()) ||
|
| !IsValidCaller(last_frame);
|
| if (iteration_done_) return;
|
|
|
| @@ -311,15 +309,6 @@ void SafeStackFrameIterator::AdvanceOneFrame() {
|
| }
|
|
|
|
|
| -bool SafeStackFrameIterator::CanIterateHandles(StackFrame* frame,
|
| - StackHandler* handler) {
|
| - // If StackIterator iterates over StackHandles, verify that
|
| - // StackHandlerIterator can be instantiated (see StackHandlerIterator
|
| - // constructor.)
|
| - return !is_valid_top_ || (frame->sp() <= handler->address());
|
| -}
|
| -
|
| -
|
| bool SafeStackFrameIterator::IsValidFrame(StackFrame* frame) const {
|
| return IsValidStackAddress(frame->sp()) && IsValidStackAddress(frame->fp());
|
| }
|
|
|