diff --git a/lib/internal/options.js b/lib/internal/options.js index effe3249888efd..5cecdc00e5ce95 100644 --- a/lib/internal/options.js +++ b/lib/internal/options.js @@ -5,6 +5,10 @@ const { getEmbedderOptions: getEmbedderOptionsFromBinding, } = internalBinding('options'); +const { + StringPrototypeSlice, +} = primordials; + let warnOnAllowUnauthorized = true; let optionsMap; @@ -43,8 +47,15 @@ function refreshOptions() { function getOptionValue(optionName) { const options = getCLIOptionsFromBinding(); - if (optionName.startsWith('--no-')) { - const option = options.get('--' + optionName.slice(5)); + if ( + optionName.length > 5 && + optionName[0] === '-' && + optionName[1] === '-' && + optionName[2] === 'n' && + optionName[3] === 'o' && + optionName[4] === '-' + ) { + const option = options.get('--' + StringPrototypeSlice(optionName, 5)); return option && !option.value; } return options.get(optionName)?.value;