Index: src/scopes.cc |
diff --git a/src/scopes.cc b/src/scopes.cc |
index 60ea20f16d5ed94f8e8a6ab8f6e58db7aab1b4c6..4b47106cbb52d7d34d78e67a6a86973e54afd29f 100644 |
--- a/src/scopes.cc |
+++ b/src/scopes.cc |
@@ -659,14 +659,14 @@ Handle<ScopeInfo> Scope::GetScopeInfo() { |
void Scope::GetNestedScopeChain( |
List<Handle<ScopeInfo> >* chain, |
int position) { |
- chain->Add(Handle<ScopeInfo>(GetScopeInfo())); |
+ if (!is_eval_scope()) chain->Add(Handle<ScopeInfo>(GetScopeInfo())); |
for (int i = 0; i < inner_scopes_.length(); i++) { |
Scope* scope = inner_scopes_[i]; |
int beg_pos = scope->start_position(); |
int end_pos = scope->end_position(); |
ASSERT(beg_pos >= 0 && end_pos >= 0); |
- if (beg_pos <= position && position <= end_pos) { |
+ if (beg_pos <= position && position < end_pos) { |
scope->GetNestedScopeChain(chain, position); |
return; |
} |