diff --git a/extensions/typescript-language-features/src/features/refactor.ts b/extensions/typescript-language-features/src/features/refactor.ts index c35359a04e96c5288975c373be8720c8c4dad5ff..5dfdc3de2e203ffbf764cb42512789a759d87c57 100644 --- a/extensions/typescript-language-features/src/features/refactor.ts +++ b/extensions/typescript-language-features/src/features/refactor.ts @@ -137,10 +137,12 @@ class TypeScriptRefactorProvider implements vscode.CodeActionProvider { return undefined; } - await this.formattingOptionsManager.ensureConfigurationForDocument(document, token); - const args: Proto.GetApplicableRefactorsRequestArgs = typeConverters.Range.toFileRangeRequestArgs(file, rangeOrSelection); - const response = await this.client.execute('getApplicableRefactors', args, token); + const response = await this.client.interuptGetErr(() => { + this.formattingOptionsManager.ensureConfigurationForDocument(document, token); + + return this.client.execute('getApplicableRefactors', args, token); + }); if (response.type !== 'response' || !response.body) { return undefined; } diff --git a/extensions/typescript-language-features/src/features/updatePathsOnRename.ts b/extensions/typescript-language-features/src/features/updatePathsOnRename.ts index f5c6c584518f1516ec170b2a48ee70e9549104e8..4a0689efac583324d271404a981d7bbb19d34032 100644 --- a/extensions/typescript-language-features/src/features/updatePathsOnRename.ts +++ b/extensions/typescript-language-features/src/features/updatePathsOnRename.ts @@ -230,21 +230,19 @@ class UpdateImportsOnFileRenameHandler extends Disposable { document: vscode.TextDocument, oldFile: string, newFile: string, - ) { + ): Promise { const isDirectoryRename = fs.lstatSync(newFile).isDirectory(); - await this.fileConfigurationManager.setGlobalConfigurationFromDocument(document, nulToken); - const args: Proto.GetEditsForFileRenameRequestArgs & { file: string } = { - file: targetResource, - oldFilePath: oldFile, - newFilePath: newFile, - }; - const response = await this.client.execute('getEditsForFileRename', args, nulToken); - if (response.type !== 'response') { - return; - } - - if (!response.body) { + const response = await this.client.interuptGetErr(() => { + this.fileConfigurationManager.setGlobalConfigurationFromDocument(document, nulToken); + const args: Proto.GetEditsForFileRenameRequestArgs & { file: string } = { + file: targetResource, + oldFilePath: oldFile, + newFilePath: newFile, + }; + return this.client.execute('getEditsForFileRename', args, nulToken); + }); + if (response.type !== 'response' || !response.body) { return; }