aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/bindings/CommonJSModuleRecord.cpp
diff options
context:
space:
mode:
authorGravatar dave caruso <me@paperdave.net> 2023-09-15 11:22:06 -0400
committerGravatar GitHub <noreply@github.com> 2023-09-15 08:22:06 -0700
commit29b22175bf6fc726d0b028c7bf5619ab89fca09a (patch)
treef0664d677e6cd2d130c76db9fb135402ae2c1110 /src/bun.js/bindings/CommonJSModuleRecord.cpp
parent75697890ce1040d2c2f9bc50499faf54b3205915 (diff)
downloadbun-29b22175bf6fc726d0b028c7bf5619ab89fca09a.tar.gz
bun-29b22175bf6fc726d0b028c7bf5619ab89fca09a.tar.zst
bun-29b22175bf6fc726d0b028c7bf5619ab89fca09a.zip
feat(runtime): add `process.binding` `uv`/`natives`/`config` + make global object properties lazy (#5355)
* binding uv * we did that * some more bindings * fix doc * fix uv * yo * static hash table nonsense <3 * huge refactor to the global object i am not ready for merge conflicts * it works part 3 * lose --------- Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
Diffstat (limited to 'src/bun.js/bindings/CommonJSModuleRecord.cpp')
-rw-r--r--src/bun.js/bindings/CommonJSModuleRecord.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/bun.js/bindings/CommonJSModuleRecord.cpp b/src/bun.js/bindings/CommonJSModuleRecord.cpp
index dad8294d9..8fbb780a8 100644
--- a/src/bun.js/bindings/CommonJSModuleRecord.cpp
+++ b/src/bun.js/bindings/CommonJSModuleRecord.cpp
@@ -118,6 +118,8 @@ static bool evaluateCommonJSModuleOnce(JSC::VM& vm, Zig::GlobalObject* globalObj
globalObject->m_BunCommonJSModuleValue.set(vm, globalObject, thisObject);
JSValue empty = JSC::evaluate(globalObject, moduleObject->sourceCode.get()->sourceCode(), thisObject, exception);
+
+ globalObject->m_BunCommonJSModuleValue.clear();
moduleObject->sourceCode.clear();
return exception.get() == nullptr;
@@ -740,7 +742,7 @@ JSC_DEFINE_HOST_FUNCTION(jsFunctionRequireCommonJS, (JSGlobalObject * lexicalGlo
// Special-case for "process" to just return the process object directly.
if (UNLIKELY(specifier == "process"_s || specifier == "node:process"_s)) {
- jsDynamicCast<JSCommonJSModule*>(callframe->argument(1))->putDirect(vm, builtinNames(vm).exportsPublicName(), globalObject->processObject(), 0);
+ jsCast<JSCommonJSModule*>(callframe->argument(1))->putDirect(vm, builtinNames(vm).exportsPublicName(), globalObject->processObject(), 0);
return JSValue::encode(globalObject->processObject());
}
@@ -752,7 +754,7 @@ JSC_DEFINE_HOST_FUNCTION(jsFunctionRequireCommonJS, (JSGlobalObject * lexicalGlo
JSValue fetchResult = Bun::fetchCommonJSModule(
globalObject,
- jsDynamicCast<JSCommonJSModule*>(callframe->argument(1)),
+ jsCast<JSCommonJSModule*>(callframe->argument(1)),
specifierValue,
&specifierStr,
&referrerStr);