diff --git a/src/vs/base/common/filters.ts b/src/vs/base/common/filters.ts index 228bae7cc617a71819171b4be5ccf5a2594c0f60..6cbb0968e9f39e16d963977263262675ad8744da 100644 --- a/src/vs/base/common/filters.ts +++ b/src/vs/base/common/filters.ts @@ -381,7 +381,7 @@ function initTable() { for (let i = 1; i <= 100; i++) { row.push(-i); } - for (let i = 0; i < 100; i++) { + for (let i = 0; i <= 100; i++) { let thisRow = row.slice(0); thisRow[0] = -i; table.push(thisRow); diff --git a/src/vs/base/test/common/filters.test.ts b/src/vs/base/test/common/filters.test.ts index 663c7cccf3d8467636e64b24053ac6182744cffe..abda7f3352b3f8fcd08bf966f7d3f3b2d50a5a23 100644 --- a/src/vs/base/test/common/filters.test.ts +++ b/src/vs/base/test/common/filters.test.ts @@ -329,6 +329,13 @@ suite('Filters', () => { assertMatches('f', ':foo', ':^foo', fuzzyScore); }); + test('Cannot set property \'1\' of undefined, #26511', function () { + let word = new Array(123).join('a'); + let pattern = new Array(120).join('a'); + fuzzyScore(pattern, word); + assert.ok(true); // must not explode + }); + test('Vscode 1.12 no longer obeys \'sortText\' in completion items (from language server), #26096', function () { assertMatches(' ', ' group', undefined, fuzzyScore); assertMatches(' g', ' group', ' ^group', fuzzyScore);