Skip to content

Commit da70ad9

Browse files
authored
Merge pull request #82150 from microsoft/joao/release/1.39/fix-82149
Fixes #82149
2 parents 1cf3a14 + ce1b4be commit da70ad9

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/vs/base/common/resourceTree.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -163,22 +163,22 @@ export class ResourceTree<T extends NonNullable<any>, C> {
163163

164164
delete(uri: URI): T | undefined {
165165
const key = relativePath(this.root.uri, uri) || uri.fsPath;
166-
const parts = key.split(/[\\\/]/).filter(p => !!p);
167-
return this._delete(this.root, parts, 0);
166+
const iterator = new PathIterator(false).reset(key);
167+
return this._delete(this.root, iterator);
168168
}
169169

170-
private _delete(node: BranchNode<T, C>, parts: string[], index: number): T | undefined {
171-
const name = parts[index];
170+
private _delete(node: BranchNode<T, C>, iterator: PathIterator): T | undefined {
171+
const name = iterator.value();
172172
const child = node.get(name);
173173

174174
if (!child) {
175175
return undefined;
176176
}
177177

178178
// not at end
179-
if (index < parts.length - 1) {
179+
if (iterator.hasNext()) {
180180
if (child instanceof BranchNode) {
181-
const result = this._delete(child, parts, index + 1);
181+
const result = this._delete(child, iterator.next());
182182

183183
if (typeof result !== 'undefined' && child.size === 0) {
184184
node.delete(name);

0 commit comments

Comments
 (0)