From 0feef365d9765ab30d2f95d6ef497ca45861db8f Mon Sep 17 00:00:00 2001 From: Koen Vlaswinkel Date: Mon, 11 Mar 2024 14:39:07 +0100 Subject: [PATCH] Clean up temporary file in finally block --- .../variant-analysis/code-scanning-pack.ts | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/extensions/ql-vscode/src/variant-analysis/code-scanning-pack.ts b/extensions/ql-vscode/src/variant-analysis/code-scanning-pack.ts index fde97e499..01b258493 100644 --- a/extensions/ql-vscode/src/variant-analysis/code-scanning-pack.ts +++ b/extensions/ql-vscode/src/variant-analysis/code-scanning-pack.ts @@ -29,10 +29,6 @@ export async function resolveCodeScanningQueryPack( // Resolve queries void logger.log(`Resolving queries for pack: ${packName}`); - const suiteFile = await file({ - postfix: ".qls", - }); - const suitePath = suiteFile.path; const suiteYaml: SuiteInstruction[] = [ { import: `codeql-suites/${language}-code-scanning.qls`, @@ -45,11 +41,20 @@ export async function resolveCodeScanningQueryPack( }, }, ]; - await outputFile(suitePath, dump(suiteYaml), "utf8"); - const resolvedQueries = await cliServer.resolveQueries(suitePath); + let resolvedQueries: string[]; + const suiteFile = await file({ + postfix: ".qls", + }); + const suitePath = suiteFile.path; - await suiteFile.cleanup(); + try { + await outputFile(suitePath, dump(suiteYaml), "utf8"); + + resolvedQueries = await cliServer.resolveQueries(suitePath); + } finally { + await suiteFile.cleanup(); + } if (resolvedQueries.length === 0) { throw Error(