From 0a67d7e9518f4cc448c4484993dae63f73cca0c8 Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Tue, 6 Sep 2022 17:38:08 -0700 Subject: [Bun.plugin] Fix validating `loader` --- src/bun.js/bindings/ModuleLoader.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/bun.js/bindings/ModuleLoader.cpp') diff --git a/src/bun.js/bindings/ModuleLoader.cpp b/src/bun.js/bindings/ModuleLoader.cpp index c55e03e4e..6f9a767e4 100644 --- a/src/bun.js/bindings/ModuleLoader.cpp +++ b/src/bun.js/bindings/ModuleLoader.cpp @@ -152,7 +152,10 @@ OnLoadResult handleOnLoadResultNotPromise(Zig::GlobalObject* globalObject, JSC:: } if (JSC::JSValue loaderValue = object->getIfPropertyExists(globalObject, JSC::Identifier::fromString(vm, "loader"_s))) { - if (loaderValue.isString()) { + if (!loaderValue.isUndefinedOrNull()) { + // If a loader is passed, we must validate it + loader = BunLoaderTypeNone; + if (JSC::JSString* loaderJSString = loaderValue.toStringOrNull(globalObject)) { WTF::String loaderString = loaderJSString->value(globalObject); if (loaderString == "js"_s) { @@ -169,8 +172,6 @@ OnLoadResult handleOnLoadResultNotPromise(Zig::GlobalObject* globalObject, JSC:: loader = BunLoaderTypeJSON; } else if (loaderString == "toml"_s) { loader = BunLoaderTypeTOML; - } else if (loaderString.length() > 0) { - loader = BunLoaderTypeNone; } } } -- cgit v1.2.3