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

Issue 17893003: Fix a VM bug in the handling of try/catch/finally. (Closed)

Created:
7 years, 5 months ago by Kevin Millikin (Google)
Modified:
7 years, 5 months ago
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

Fix a VM bug in the handling of try/catch/finally. In the case that code in the catch block threw in any fashion, the finally block was not executed. Fix this by properly treating the finally block of try/catch/finally as an exception handler for the catch block. R=fschneider@google.com, srdjan@google.com BUG=https://code.google.com/p/dart/issues/detail?id=430 Committed: https://code.google.com/p/dart/source/detail?r=24583

Patch Set 1 #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+61 lines, -33 lines) Patch
M runtime/vm/flow_graph_builder.cc View 2 chunks +61 lines, -19 lines 4 comments Download
M runtime/vm/parser.cc View 1 chunk +0 lines, -7 lines 0 comments Download
M tests/co19/co19-runtime.status View 1 chunk +0 lines, -1 line 0 comments Download
M tests/language/language.status View 2 chunks +0 lines, -6 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
Kevin Millikin (Google)
7 years, 5 months ago (2013-06-26 14:19:37 UTC) #1
Kevin Millikin (Google)
https://codereview.chromium.org/17893003/diff/1/runtime/vm/flow_graph_builder.cc File runtime/vm/flow_graph_builder.cc (left): https://codereview.chromium.org/17893003/diff/1/runtime/vm/flow_graph_builder.cc#oldcode3247 runtime/vm/flow_graph_builder.cc:3247: intptr_t old_try_index = owner()->try_index(); The name 'try_index' isn't quite ...
7 years, 5 months ago (2013-06-26 14:27:04 UTC) #2
Florian Schneider
LGTM. [cc +vm-dev] https://codereview.chromium.org/17893003/diff/1/runtime/vm/flow_graph_builder.cc File runtime/vm/flow_graph_builder.cc (right): https://codereview.chromium.org/17893003/diff/1/runtime/vm/flow_graph_builder.cc#newcode3338 runtime/vm/flow_graph_builder.cc:3338: if ((node->finally_block() != NULL) && is_open()) ...
7 years, 5 months ago (2013-06-27 14:05:59 UTC) #3
srdjan
LGTM
7 years, 5 months ago (2013-06-27 22:42:33 UTC) #4
Kevin Millikin (Google)
https://codereview.chromium.org/17893003/diff/1/runtime/vm/flow_graph_builder.cc File runtime/vm/flow_graph_builder.cc (right): https://codereview.chromium.org/17893003/diff/1/runtime/vm/flow_graph_builder.cc#newcode3338 runtime/vm/flow_graph_builder.cc:3338: if ((node->finally_block() != NULL) && is_open()) { On 2013/06/27 ...
7 years, 5 months ago (2013-06-28 11:59:08 UTC) #5
Kevin Millikin (Google)
7 years, 5 months ago (2013-06-28 12:29:05 UTC) #6
Message was sent while issue was closed.
Committed patchset #1 manually as r24583 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698