Skip to content

Commit 469cdac

Browse files
committed
src: pass along errors from StreamBase req obj creations
PR-URL: #25822 Reviewed-By: Gireesh Punathil <[email protected]>
1 parent d6f3b87 commit 469cdac

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

src/stream_base-inl.h

+10-6
Original file line numberDiff line numberDiff line change
@@ -163,9 +163,11 @@ inline int StreamBase::Shutdown(v8::Local<v8::Object> req_wrap_obj) {
163163
HandleScope handle_scope(env->isolate());
164164

165165
if (req_wrap_obj.IsEmpty()) {
166-
req_wrap_obj =
167-
env->shutdown_wrap_template()
168-
->NewInstance(env->context()).ToLocalChecked();
166+
if (!env->shutdown_wrap_template()
167+
->NewInstance(env->context())
168+
.ToLocal(&req_wrap_obj)) {
169+
return UV_EBUSY;
170+
}
169171
StreamReq::ResetObject(req_wrap_obj);
170172
}
171173

@@ -211,9 +213,11 @@ inline StreamWriteResult StreamBase::Write(
211213
HandleScope handle_scope(env->isolate());
212214

213215
if (req_wrap_obj.IsEmpty()) {
214-
req_wrap_obj =
215-
env->write_wrap_template()
216-
->NewInstance(env->context()).ToLocalChecked();
216+
if (!env->write_wrap_template()
217+
->NewInstance(env->context())
218+
.ToLocal(&req_wrap_obj)) {
219+
return StreamWriteResult { false, UV_EBUSY, nullptr, 0 };
220+
}
217221
StreamReq::ResetObject(req_wrap_obj);
218222
}
219223

0 commit comments

Comments
 (0)