[folding] Cannot read property 'length' of undefined. Fixes #46171

This commit is contained in:
Martin Aeschlimann 2018-03-20 12:17:42 +01:00
parent 53332ed17f
commit ab90818cb3
2 changed files with 5 additions and 5 deletions

View file

@ -292,9 +292,9 @@ export function getJavascriptMode(documentRegions: LanguageModelCache<HTMLDocume
let endLine = curr.end.line;
if (startLine < endLine && startLine >= rangeStartLine && endLine < rangeEndLine) {
let foldingRange: FoldingRange = { startLine, endLine };
let match = document.getText(curr).match(/^\s*\/(\/\s*#(?:end)?region\b)|([\*\/])/);
let match = document.getText(curr).match(/^\s*\/(?:(\/\s*#(?:end)?region\b)|(\*|\/))/);
if (match) {
foldingRange.type = match[1].length ? FoldingRangeType.Region : FoldingRangeType.Comment;
foldingRange.type = match[1] ? FoldingRangeType.Region : FoldingRangeType.Comment;
}
ranges.push(foldingRange);
}

View file

@ -130,7 +130,7 @@ suite('Object Folding', () => {
/* 6*/' };',
/* 7*/'</script>',
/* 8*/'<script>',
/* 9*/' test(() => {',
/* 9*/' test(() => { // hello',
/*10*/' f();',
/*11*/' });',
/*12*/'</script>',
@ -206,7 +206,7 @@ suite('Object Folding', () => {
/*2*/'</div>',
];
assertRanges(input, [r(0, 1)]);
});
});
test('Fold intersecting region', () => {
let input = [
@ -218,7 +218,7 @@ suite('Object Folding', () => {
/*5*/'<!-- #endregion -->',
];
assertRanges(input, [r(0, 3)]);
});
});
test('Test limit', () => {