提交 e6d95f46 编写于 作者: M Martin Aeschlimann

removeFromRecentlyOpened Command Broken. Fixes #58131

上级 120fe2e1
......@@ -120,7 +120,7 @@ export class HistoryMainService implements IHistoryMainService {
const mru = this.getRecentlyOpened();
let update = false;
pathsToRemove.forEach((pathToRemove => {
pathsToRemove.forEach(pathToRemove => {
// Remove workspace
let index = arrays.firstIndex(mru.workspaces, workspace => {
......@@ -132,7 +132,7 @@ export class HistoryMainService implements IHistoryMainService {
}
if (typeof pathToRemove === 'string') {
if (isSingleFolderWorkspaceIdentifier(workspace)) {
return workspace.scheme === Schemas.file && areResourcesEqual(URI.file(pathToRemove), workspace);
return workspace.scheme === Schemas.file && isEqual(pathToRemove, workspace.fsPath, !isLinux /* ignorecase */);
}
if (isWorkspaceIdentifier(workspace)) {
return isEqual(pathToRemove, workspace.configPath, !isLinux /* ignorecase */);
......@@ -146,15 +146,20 @@ export class HistoryMainService implements IHistoryMainService {
}
// Remove file
const pathToRemoveURI = pathToRemove instanceof URI ? pathToRemove : typeof pathToRemove === 'string' ? URI.file(pathToRemove) : null;
if (pathToRemoveURI) {
index = arrays.firstIndex(mru.files, file => areResourcesEqual(file, pathToRemoveURI));
}
index = arrays.firstIndex(mru.files, file => {
if (pathToRemove instanceof URI) {
return areResourcesEqual(file, pathToRemove);
} else if (typeof pathToRemove === 'string') {
return isEqual(file.fsPath, pathToRemove, !isLinux /* ignorecase */);
}
return false;
});
if (index >= 0) {
mru.files.splice(index, 1);
update = true;
}
}));
});
if (update) {
this.saveRecentlyOpened(mru);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册