aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/bindings/JSReadableHelper.cpp
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-12-05 00:44:34 -0800
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-12-05 00:44:34 -0800
commit04dcf180d5d66c339ae7cfc127b0831860dbdf83 (patch)
treec97732926bfac301089452cdf4bdf75418b192d8 /src/bun.js/bindings/JSReadableHelper.cpp
parent79094e6643d72653d800c6ffa617da35a79d76bd (diff)
downloadbun-04dcf180d5d66c339ae7cfc127b0831860dbdf83.tar.gz
bun-04dcf180d5d66c339ae7cfc127b0831860dbdf83.tar.zst
bun-04dcf180d5d66c339ae7cfc127b0831860dbdf83.zip
Fix "is not event emitter" errror
Diffstat (limited to 'src/bun.js/bindings/JSReadableHelper.cpp')
-rw-r--r--src/bun.js/bindings/JSReadableHelper.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/bun.js/bindings/JSReadableHelper.cpp b/src/bun.js/bindings/JSReadableHelper.cpp
index 3845d62f5..0565e3f28 100644
--- a/src/bun.js/bindings/JSReadableHelper.cpp
+++ b/src/bun.js/bindings/JSReadableHelper.cpp
@@ -115,9 +115,9 @@ JSC_DEFINE_HOST_FUNCTION(jsReadable_resume, (JSGlobalObject * lexicalGlobalObjec
JSReadableHelper_EXTRACT_STREAM_STATE
auto* jsEmitterWrap
- = jsDynamicCast<JSEventEmitter*>(stream);
+ = jsEventEmitterCastFast(vm, lexicalGlobalObject, stream);
- if (!jsEmitterWrap) {
+ if (UNLIKELY(!jsEmitterWrap)) {
throwTypeError(lexicalGlobalObject, throwScope, "stream is not EventEmitter"_s);
return JSValue::encode(jsUndefined());
}
@@ -169,8 +169,9 @@ EncodedJSValue emitReadable_(JSGlobalObject* lexicalGlobalObject, JSObject* stre
auto eventType = clientData->builtinNames().readablePublicName();
MarkedArgumentBuffer args;
- auto emitter = jsDynamicCast<JSEventEmitter*>(stream);
- if (!emitter) {
+ auto* emitter
+ = jsEventEmitterCastFast(vm, lexicalGlobalObject, stream);
+ if (UNLIKELY(!emitter)) {
throwTypeError(lexicalGlobalObject, throwScope, "stream is not EventEmitter"_s);
return JSValue::encode(jsUndefined());
}