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

Issue 577423005: Fix context handling in for-in loops (Closed)

Created:
6 years, 3 months ago by hausner
Modified:
6 years, 3 months ago
Reviewers:
regis
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

Fix context handling in for-in loops The creation and assignment of a fresh loop variable appeared to be outside of the loop body. When the assignment fails, e.g. due to a type check, the stack walking code could thus access the wrong context variables. This CL fixes code and PC descriptor generation for for-in loops and also fixes a separate bug that crashed the VM when printing an internal error message. Fixes issue 20999. R=regis@google.com Committed: https://code.google.com/p/dart/source/detail?r=40552

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+27 lines, -20 lines) Patch
M runtime/vm/debugger.cc View 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/parser.cc View 2 chunks +26 lines, -19 lines 0 comments Download

Messages

Total messages: 5 (1 generated)
hausner
6 years, 3 months ago (2014-09-22 16:13:36 UTC) #2
regis
LGTM A regression test would be nice, although I guess it is not easy to ...
6 years, 3 months ago (2014-09-22 16:43:42 UTC) #3
hausner
A test would have to assume a lot of VM-internal implementation details and would not ...
6 years, 3 months ago (2014-09-22 17:22:59 UTC) #4
hausner
6 years, 3 months ago (2014-09-22 17:23:52 UTC) #5
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as r40552 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698