diff --git a/src/services/outliningElementsCollector.ts b/src/services/outliningElementsCollector.ts index f4824192508..0b39f54ca29 100644 --- a/src/services/outliningElementsCollector.ts +++ b/src/services/outliningElementsCollector.ts @@ -79,12 +79,10 @@ module ts { break; } else if (tryStatement.finallyBlock === n) { - var children = tryStatement.getChildren(); - for (var i = 0, m = children.length; i < m; i++) { - if (children[i].kind === SyntaxKind.FinallyKeyword) { - addOutliningSpan(children[i], openBrace, closeBrace, autoCollapse(n)); - break; - } + var finallyKeyword = findChildOfKind(tryStatement, SyntaxKind.FinallyKeyword, sourceFile); + if (finallyKeyword) { + addOutliningSpan(finallyKeyword, openBrace, closeBrace, autoCollapse(n)); + break; } } diff --git a/src/services/services.ts b/src/services/services.ts index ed17b59cf03..70921f73aef 100644 --- a/src/services/services.ts +++ b/src/services/services.ts @@ -3510,12 +3510,8 @@ module ts { } if (tryStatement.finallyBlock) { - var children = tryStatement.getChildren(); - for (var i = 0, n = children.length; i < n; i++) { - if (pushKeywordIf(keywords, children[i], SyntaxKind.FinallyKeyword)) { - break; - } - } + var finallyKeyword = findChildOfKind(tryStatement, SyntaxKind.FinallyKeyword, sourceFile); + pushKeywordIf(keywords, finallyKeyword, SyntaxKind.FinallyKeyword); } return map(keywords, getReferenceEntryFromNode);