| Index: src/runtime/runtime-debug.cc
|
| diff --git a/src/runtime/runtime-debug.cc b/src/runtime/runtime-debug.cc
|
| index 591c8650e24b4305f0961a2e87924c377ab35534..239f2b2e38f36ab7b30a111ce223a5f362525cb7 100644
|
| --- a/src/runtime/runtime-debug.cc
|
| +++ b/src/runtime/runtime-debug.cc
|
| @@ -1298,21 +1298,16 @@
|
| context_ = Handle<Context>();
|
| return;
|
| }
|
| - if (scope_type == ScopeTypeScript) {
|
| - seen_script_scope_ = true;
|
| - if (context_->IsScriptContext()) {
|
| + if (scope_type == ScopeTypeScript) seen_script_scope_ = true;
|
| + if (nested_scope_chain_.is_empty()) {
|
| + if (scope_type == ScopeTypeScript) {
|
| + if (context_->IsScriptContext()) {
|
| + context_ = Handle<Context>(context_->previous(), isolate_);
|
| + }
|
| + CHECK(context_->IsNativeContext());
|
| + } else {
|
| context_ = Handle<Context>(context_->previous(), isolate_);
|
| }
|
| - if (!nested_scope_chain_.is_empty()) {
|
| - DCHECK_EQ(nested_scope_chain_.last()->scope_type(), SCRIPT_SCOPE);
|
| - nested_scope_chain_.RemoveLast();
|
| - DCHECK(nested_scope_chain_.is_empty());
|
| - }
|
| - CHECK(context_->IsNativeContext());
|
| - return;
|
| - }
|
| - if (nested_scope_chain_.is_empty()) {
|
| - context_ = Handle<Context>(context_->previous(), isolate_);
|
| } else {
|
| if (nested_scope_chain_.last()->HasContext()) {
|
| DCHECK(context_->previous() != NULL);
|
|
|