fix maximum call stack size reached issue (#14878)

* fix maximum call stack size reached issue

* Revert "fix maximum call stack size reached issue"

This reverts commit 178675633032a508ddb5585d1adc4f83bb243f55.

* add a few array operations

* use new push
This commit is contained in:
Alan Ren
2021-03-29 12:07:23 -07:00
committed by GitHub
parent dd5adad772
commit 4c5a4215f8
4 changed files with 121 additions and 3 deletions

View File

@@ -4,7 +4,7 @@
*--------------------------------------------------------------------------------------------*/
import { ICollapseStateChangeEvent, ITreeElement, ITreeFilter, ITreeFilterDataResult, ITreeModel, ITreeNode, TreeVisibility, ITreeModelSpliceEvent, TreeError } from 'vs/base/browser/ui/tree/tree';
import { tail2 } from 'vs/base/common/arrays';
import { splice, tail2 } from 'vs/base/common/arrays';
import { Emitter, Event, EventBufferer } from 'vs/base/common/event';
import { Iterable } from 'vs/base/common/iterator';
import { ISpliceable } from 'vs/base/common/sequence';
@@ -149,7 +149,7 @@ export class IndexTreeModel<T extends Exclude<any, undefined>, TFilterData = voi
}
}
const deletedNodes = parentNode.children.splice(lastIndex, deleteCount, ...nodesToInsert);
const deletedNodes = splice(parentNode.children, lastIndex, deleteCount, nodesToInsert);
// figure out what is the count of deleted visible children
let deletedVisibleChildrenCount = 0;