summaryrefslogtreecommitdiff
path: root/src/stream_base.cc
diff options
context:
space:
mode:
authorFedor Indutny <fedor@indutny.com>2016-12-08 21:32:06 +0100
committerFedor Indutny <fedor@indutny.com>2016-12-19 17:20:07 -0500
commit729fecf3905157d05baf36911c6aeaf3543e85c1 (patch)
treef63c0f9a5e156fea2665eab6649e4f30bc93bdc3 /src/stream_base.cc
parent0b443845616437d0ccf7ce6ee10c79e1432bc3d7 (diff)
downloadandroid-node-v8-729fecf3905157d05baf36911c6aeaf3543e85c1.tar.gz
android-node-v8-729fecf3905157d05baf36911c6aeaf3543e85c1.tar.bz2
android-node-v8-729fecf3905157d05baf36911c6aeaf3543e85c1.zip
stream_base: homogenize req_wrap_obj use
Always use `req_wrap_obj` to allow calling `req->Done()` in stream implementations. PR-URL: https://github.com/nodejs/node/pull/10184 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Diffstat (limited to 'src/stream_base.cc')
-rw-r--r--src/stream_base.cc17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/stream_base.cc b/src/stream_base.cc
index a12a1efc73..3ed622d7ef 100644
--- a/src/stream_base.cc
+++ b/src/stream_base.cc
@@ -82,10 +82,8 @@ void StreamBase::AfterShutdown(ShutdownWrap* req_wrap, int status) {
req_wrap_obj
};
- if (req_wrap->object()->Has(env->context(),
- env->oncomplete_string()).FromJust()) {
+ if (req_wrap_obj->Has(env->context(), env->oncomplete_string()).FromJust())
req_wrap->MakeCallback(env->oncomplete_string(), arraysize(argv), argv);
- }
delete req_wrap;
}
@@ -172,9 +170,8 @@ int StreamBase::Writev(const FunctionCallbackInfo<Value>& args) {
int err = DoWrite(req_wrap, *bufs, count, nullptr);
- req_wrap->object()->Set(env->async(), True(env->isolate()));
- req_wrap->object()->Set(env->bytes_string(),
- Number::New(env->isolate(), bytes));
+ req_wrap_obj->Set(env->async(), True(env->isolate()));
+ req_wrap_obj->Set(env->bytes_string(), Number::New(env->isolate(), bytes));
const char* msg = Error();
if (msg != nullptr) {
req_wrap_obj->Set(env->error_string(), OneByteString(env->isolate(), msg));
@@ -328,7 +325,7 @@ int StreamBase::WriteString(const FunctionCallbackInfo<Value>& args) {
// Reference StreamWrap instance to prevent it from being garbage
// collected before `AfterWrite` is called.
CHECK_EQ(false, req_wrap->persistent().IsEmpty());
- req_wrap->object()->Set(env->handle_string(), send_handle_obj);
+ req_wrap_obj->Set(env->handle_string(), send_handle_obj);
}
err = DoWrite(
@@ -338,7 +335,7 @@ int StreamBase::WriteString(const FunctionCallbackInfo<Value>& args) {
reinterpret_cast<uv_stream_t*>(send_handle));
}
- req_wrap->object()->Set(env->async(), True(env->isolate()));
+ req_wrap_obj->Set(env->async(), True(env->isolate()));
if (err)
req_wrap->Dispose();
@@ -383,10 +380,8 @@ void StreamBase::AfterWrite(WriteWrap* req_wrap, int status) {
wrap->ClearError();
}
- if (req_wrap->object()->Has(env->context(),
- env->oncomplete_string()).FromJust()) {
+ if (req_wrap_obj->Has(env->context(), env->oncomplete_string()).FromJust())
req_wrap->MakeCallback(env->oncomplete_string(), arraysize(argv), argv);
- }
req_wrap->Dispose();
}