From 53bfb14fea840adf98a37a898d6cd8f9b86ae39a Mon Sep 17 00:00:00 2001 From: Sander Declerck Date: Thu, 2 Oct 2025 09:20:59 +0200 Subject: [PATCH] Only load the malware database once --- packages/safe-chain/src/scanning/malwareDatabase.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/safe-chain/src/scanning/malwareDatabase.js b/packages/safe-chain/src/scanning/malwareDatabase.js index 26f1999..0181e5e 100644 --- a/packages/safe-chain/src/scanning/malwareDatabase.js +++ b/packages/safe-chain/src/scanning/malwareDatabase.js @@ -8,7 +8,13 @@ import { } from "../config/configFile.js"; import { ui } from "../environment/userInteraction.js"; +let cachedMalwareDatabase = null; + export async function openMalwareDatabase() { + if (cachedMalwareDatabase) { + return cachedMalwareDatabase; + } + const malwareDatabase = await getMalwareDatabase(); function getPackageStatus(name, version) { @@ -25,13 +31,14 @@ export async function openMalwareDatabase() { return packageData.reason; } - return { + cachedMalwareDatabase = { getPackageStatus, isMalware: (name, version) => { const status = getPackageStatus(name, version); return isMalwareStatus(status); }, }; + return cachedMalwareDatabase; } async function getMalwareDatabase() {