|
@ -53,6 +53,7 @@ using v8::TryCatch; |
|
|
using v8::Context; |
|
|
using v8::Context; |
|
|
using v8::Arguments; |
|
|
using v8::Arguments; |
|
|
using v8::Integer; |
|
|
using v8::Integer; |
|
|
|
|
|
using v8::Boolean; |
|
|
|
|
|
|
|
|
Persistent<Function> pipeConstructor; |
|
|
Persistent<Function> pipeConstructor; |
|
|
|
|
|
|
|
@ -224,17 +225,25 @@ void PipeWrap::AfterConnect(uv_connect_t* req, int status) { |
|
|
assert(req_wrap->object_.IsEmpty() == false); |
|
|
assert(req_wrap->object_.IsEmpty() == false); |
|
|
assert(wrap->object_.IsEmpty() == false); |
|
|
assert(wrap->object_.IsEmpty() == false); |
|
|
|
|
|
|
|
|
|
|
|
bool readable, writable; |
|
|
|
|
|
|
|
|
if (status) { |
|
|
if (status) { |
|
|
SetErrno(uv_last_error(uv_default_loop())); |
|
|
SetErrno(uv_last_error(uv_default_loop())); |
|
|
|
|
|
readable = writable = 0; |
|
|
|
|
|
} else { |
|
|
|
|
|
readable = uv_is_readable(req->handle) != 0; |
|
|
|
|
|
writable = uv_is_writable(req->handle) != 0; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
Local<Value> argv[3] = { |
|
|
Local<Value> argv[5] = { |
|
|
Integer::New(status), |
|
|
Integer::New(status), |
|
|
Local<Value>::New(wrap->object_), |
|
|
Local<Value>::New(wrap->object_), |
|
|
Local<Value>::New(req_wrap->object_) |
|
|
Local<Value>::New(req_wrap->object_), |
|
|
|
|
|
Local<Value>::New(Boolean::New(readable)), |
|
|
|
|
|
Local<Value>::New(Boolean::New(writable)) |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
MakeCallback(req_wrap->object_, "oncomplete", 3, argv); |
|
|
MakeCallback(req_wrap->object_, "oncomplete", 5, argv); |
|
|
|
|
|
|
|
|
delete req_wrap; |
|
|
delete req_wrap; |
|
|
} |
|
|
} |
|
|