7576: Fix resolveCodeAction trying to edit files before creating them r=Veykril a=Veykril

Fixes #7208
bors r+

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
This commit is contained in:
bors[bot] 2021-02-05 20:35:51 +00:00 committed by GitHub
commit 4cc333c889
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -528,10 +528,10 @@ export function resolveCodeAction(ctx: Ctx): Cmd {
const edit = client.protocol2CodeConverter.asWorkspaceEdit(itemEdit);
// filter out all text edits and recreate the WorkspaceEdit without them so we can apply
// snippet edits on our own
const itemEditWithoutTextEdits = { ...item, documentChanges: itemEdit.documentChanges?.filter(change => "kind" in change) };
const editWithoutTextEdits = client.protocol2CodeConverter.asWorkspaceEdit(itemEditWithoutTextEdits);
const lcFileSystemEdit = { ...itemEdit, documentChanges: itemEdit.documentChanges?.filter(change => "kind" in change) };
const fileSystemEdit = client.protocol2CodeConverter.asWorkspaceEdit(lcFileSystemEdit);
await vscode.workspace.applyEdit(fileSystemEdit);
await applySnippetWorkspaceEdit(edit);
await vscode.workspace.applyEdit(editWithoutTextEdits);
};
}