Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(411)

Unified Diff: src/scopes.cc

Issue 8725001: Reapply "Fix the ScopeIterator reimplementation". (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Use BreakLocationIterator to discover break at return. Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/scopes.cc
diff --git a/src/scopes.cc b/src/scopes.cc
index 29fd5ebad6db1a02b38efa6d81b5446ddecd35c0..e05ca172518cdf8cdc7abf4eb9ef697673bd1c9e 100644
--- a/src/scopes.cc
+++ b/src/scopes.cc
@@ -661,14 +661,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;
}
« src/parser.cc ('K') | « src/runtime.cc ('k') | test/cctest/test-parsing.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698