aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/bindings/Process.cpp
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-02-06 23:15:23 -0800
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-02-06 23:15:23 -0800
commit153834cf5c98fb1bda1a679154200fed9bbda4b7 (patch)
tree063acf8621a3828fa5b00b50217847e67c57e4b8 /src/bun.js/bindings/Process.cpp
parent6aea31f4fcb7b0b1cfbe1aac43145c87cb09f775 (diff)
downloadbun-153834cf5c98fb1bda1a679154200fed9bbda4b7.tar.gz
bun-153834cf5c98fb1bda1a679154200fed9bbda4b7.tar.zst
bun-153834cf5c98fb1bda1a679154200fed9bbda4b7.zip
Throw on process.binding
Diffstat (limited to 'src/bun.js/bindings/Process.cpp')
-rw-r--r--src/bun.js/bindings/Process.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/bun.js/bindings/Process.cpp b/src/bun.js/bindings/Process.cpp
index bce4db8a6..7b9154211 100644
--- a/src/bun.js/bindings/Process.cpp
+++ b/src/bun.js/bindings/Process.cpp
@@ -308,6 +308,15 @@ JSC_DEFINE_HOST_FUNCTION(Process_functionUptime,
return JSC::JSValue::encode(JSC::jsNumber(result));
}
+JSC_DEFINE_HOST_FUNCTION(Process_functionBinding,
+ (JSC::JSGlobalObject * globalObject, JSC::CallFrame* callFrame))
+{
+ auto scope = DECLARE_THROW_SCOPE(globalObject->vm());
+ auto& vm = globalObject->vm();
+ throwTypeError(globalObject, scope, "process.binding is not supported in Bun. If this breaks a library you're using, please file an issue at https://bun.sh/issues and include a reproducible code sample."_s);
+ return JSC::JSValue::encode(JSC::JSValue {});
+}
+
JSC_DEFINE_HOST_FUNCTION(Process_functionExit,
(JSC::JSGlobalObject * globalObject, JSC::CallFrame* callFrame))
{
@@ -724,6 +733,9 @@ void Process::finishCreation(JSC::VM& vm)
this->putDirectNativeFunction(vm, globalObject, JSC::Identifier::fromString(this->vm(), "umask"_s),
1, Process_functionUmask, ImplementationVisibility::Public, NoIntrinsic, 0);
+ this->putDirectNativeFunction(vm, globalObject, JSC::Identifier::fromString(this->vm(), "binding"_s),
+ 1, Process_functionBinding, ImplementationVisibility::Public, NoIntrinsic, PropertyAttribute::DontEnum | 0);
+
// target_defaults:
// { cflags: [],
// default_configuration: 'Release',