Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Bevenius <daniel.bevenius@gmail.com>2016-07-24 06:13:19 +0300
committerDaniel Bevenius <daniel.bevenius@gmail.com>2016-09-11 15:48:56 +0300
commit83a354c33b29686ba6df9cd017ab6b4baaff4272 (patch)
treecffc88b56ca26b1937cd56a60e3d388dbd542cb6 /src/pipe_wrap.cc
parent0e6c3360317ea7c5c7cc242dfb5c61c359493f34 (diff)
src: pull AfterConnect from pipe_wrap and tcp_wrap
This commit attempts to address one of the items in https://github.com/nodejs/node/issues/4641 which is related to src/pipe_wrap.cc and src/tcp_wrap.cc. Currently both pipe_wrap.cc and tcp_wrap.cc contain an AfterConnect function that are almost identical. This commit extracts this function into ConnectionWrap so that that both can share it. PR-URL: https://github.com/nodejs/node/pull/8448 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Diffstat (limited to 'src/pipe_wrap.cc')
-rw-r--r--src/pipe_wrap.cc40
1 files changed, 0 insertions, 40 deletions
diff --git a/src/pipe_wrap.cc b/src/pipe_wrap.cc
index 8590a0dc9e0..77476d52db5 100644
--- a/src/pipe_wrap.cc
+++ b/src/pipe_wrap.cc
@@ -15,7 +15,6 @@
namespace node {
-using v8::Boolean;
using v8::Context;
using v8::EscapableHandleScope;
using v8::External;
@@ -23,7 +22,6 @@ using v8::Function;
using v8::FunctionCallbackInfo;
using v8::FunctionTemplate;
using v8::HandleScope;
-using v8::Integer;
using v8::Local;
using v8::Object;
using v8::Value;
@@ -141,44 +139,6 @@ void PipeWrap::Listen(const FunctionCallbackInfo<Value>& args) {
}
-// TODO(bnoordhuis) Maybe share this with TCPWrap?
-void PipeWrap::AfterConnect(uv_connect_t* req, int status) {
- ConnectWrap* req_wrap = static_cast<ConnectWrap*>(req->data);
- PipeWrap* wrap = static_cast<PipeWrap*>(req->handle->data);
- CHECK_EQ(req_wrap->env(), wrap->env());
- Environment* env = wrap->env();
-
- HandleScope handle_scope(env->isolate());
- Context::Scope context_scope(env->context());
-
- // The wrap and request objects should still be there.
- CHECK_EQ(req_wrap->persistent().IsEmpty(), false);
- CHECK_EQ(wrap->persistent().IsEmpty(), false);
-
- bool readable, writable;
-
- if (status) {
- readable = writable = 0;
- } else {
- readable = uv_is_readable(req->handle) != 0;
- writable = uv_is_writable(req->handle) != 0;
- }
-
- Local<Object> req_wrap_obj = req_wrap->object();
- Local<Value> argv[5] = {
- Integer::New(env->isolate(), status),
- wrap->object(),
- req_wrap_obj,
- Boolean::New(env->isolate(), readable),
- Boolean::New(env->isolate(), writable)
- };
-
- req_wrap->MakeCallback(env->oncomplete_string(), arraysize(argv), argv);
-
- delete req_wrap;
-}
-
-
void PipeWrap::Open(const FunctionCallbackInfo<Value>& args) {
Environment* env = Environment::GetCurrent(args);