From ad95cc8d4794ae0ccc6c2265358cfc44e6d6c3c5 Mon Sep 17 00:00:00 2001 From: Vladimir Matveev Date: Mon, 1 Dec 2014 17:18:50 -0800 Subject: [PATCH] handle cases when new expression is used with no arguments --- src/services/smartIndenter.ts | 3 ++- tests/cases/fourslash/indentNewExpressionNoBraces.ts | 7 +++++++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 tests/cases/fourslash/indentNewExpressionNoBraces.ts diff --git a/src/services/smartIndenter.ts b/src/services/smartIndenter.ts index 3fbfe142282..ad06d55e39d 100644 --- a/src/services/smartIndenter.ts +++ b/src/services/smartIndenter.ts @@ -253,7 +253,8 @@ module ts.formatting { rangeContainsStartEnd((node.parent).typeArguments, start, node.getEnd())) { return (node.parent).typeArguments; } - if (rangeContainsStartEnd((node.parent).arguments, start, node.getEnd())) { + if ((node.parent).arguments && + rangeContainsStartEnd((node.parent).arguments, start, node.getEnd())) { return (node.parent).arguments; } break; diff --git a/tests/cases/fourslash/indentNewExpressionNoBraces.ts b/tests/cases/fourslash/indentNewExpressionNoBraces.ts new file mode 100644 index 00000000000..b1dac278ca3 --- /dev/null +++ b/tests/cases/fourslash/indentNewExpressionNoBraces.ts @@ -0,0 +1,7 @@ +/// + +////new Foo/*1*/ + +goTo.marker("1"); +edit.insert("\n"); +verify.indentationIs(0); \ No newline at end of file