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

Unified Diff: runtime/vm/parser.cc

Issue 17893003: Fix a VM bug in the handling of try/catch/finally. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 6 months 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: runtime/vm/parser.cc
diff --git a/runtime/vm/parser.cc b/runtime/vm/parser.cc
index 877337676c4dc2d5f5434fe2e12d3990d55034a1..e643011ed8e49f0bc626effc8bacdeeb5024c6d4 100644
--- a/runtime/vm/parser.cc
+++ b/runtime/vm/parser.cc
@@ -6417,13 +6417,6 @@ AstNode* Parser::ParseTryStatement(String* label_name) {
node_to_inline = inner_try_block->GetNodeToInlineFinally(node_index);
tokens_iterator_.SetCurrentPosition(finally_pos);
}
- if (!generic_catch_seen) {
- // No generic catch handler exists so execute this finally block
- // before rethrowing the exception.
- finally_block = ParseFinallyBlock();
- catch_handler_list->Add(finally_block);
- tokens_iterator_.SetCurrentPosition(finally_pos);
- }
finally_block = ParseFinallyBlock();
} else {
if (!catch_seen) {

Powered by Google App Engine
This is Rietveld 408576698