From 628b00e69c3cebec1493e13d0ee72a57f1da427c Mon Sep 17 00:00:00 2001 From: Tim Perry Date: Wed, 5 Aug 2026 13:13:52 +0200 Subject: [PATCH] Don't swallow errors in waitForModule callback --- config.js | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/config.js b/config.js index 8dbc502..91a60d3 100644 --- a/config.js +++ b/config.js @@ -167,24 +167,33 @@ const CERT_DER = pemToDer(CERT_PEM); function waitForModule(moduleName, callback) { if (Array.isArray(moduleName)) { moduleName.forEach(module => waitForModule(module, callback)); + return; } - try { - const module = Process.getModuleByName(moduleName) - module.ensureInitialized(); + const module = findLoadedModule(moduleName); + + if (module) { callback(module); return; - } catch (e) { - try { - const module = Module.load(moduleName); - callback(module); - return; - } catch (e) {} } MODULE_LOAD_CALLBACKS[moduleName] = callback; } +function findLoadedModule(moduleName) { + try { + const module = Process.getModuleByName(moduleName); + module.ensureInitialized(); + return module; + } catch (e) {} + + try { + return Module.load(moduleName); + } catch (e) {} + + return null; +} + const getModuleName = (nameOrPath) => { const endOfPath = nameOrPath.lastIndexOf('/'); return nameOrPath.slice(endOfPath + 1);