Skip to content

Instantly share code, notes, and snippets.

@andrew-aladev
Last active November 8, 2016 14:51
Show Gist options
  • Save andrew-aladev/3fad5494f854c910ed642038a2d2a108 to your computer and use it in GitHub Desktop.
Save andrew-aladev/3fad5494f854c910ed642038a2d2a108 to your computer and use it in GitHub Desktop.
view source of uv_shutdown method
g++ -E '-D_DARWIN_USE_64_BIT_INODE=1' '-DNODE_WANT_INTERNALS=1' '-DARCH="x64"' '-DPLATFORM="mac"' '-DNODE_V8_OPTIONS=""' '-DHAVE_OPENSSL=1' '-DJS_ENGINE_V8=1' '-DV8_IS_3_14=1' '-DHAVE_DTRACE=1' '-DJXCORE_EMBEDS_SQLITE' '-D__POSIX__' '-DPLATFORM="darwin"' '-DOPENSSL_NO_SSL2' '-DOPENSSL_NO_HEARTBEATS' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' -I./src -I./src/wrappers -I./tools/msvs/genfiles -I./deps/uv/src/ares -I/Users/hiqouser/workspace/jxcore/out/Release/obj/gen -I./deps/openssl/openssl/include -I./deps/v8/include -I./deps/sqlite -I. -I./deps/zlib -I./deps/http_parser -I./deps/cares/include -I./deps/uv/include src/wrappers/stream_wrap.cc
v8::Handle<v8::Value> StreamWrap::Shutdown(const v8::Arguments& p___args) { ; v8::HandleScope scope; v8::Isolate * __contextORisolate = p___args.GetIsolate(); jxcore::PArguments args(p___args); {
StreamWrap* wrap = static_cast<StreamWrap*>(args.GetHolder()); if (!wrap) { fprintf(__stderrp, "StreamWrap" ": Aborting due to unwrap failure at %s:%d\n", "src/wrappers/stream_wrap.cc", 493); abort(); } node::
commons* com = wrap->com;
ShutdownWrap* req_wrap = new ShutdownWrap(wrap->com);
fprintf(__stderrp, "ololo uv_shutdown called with %p, %p\n", req_wrap->req_, wrap->stream_);
int r = uv_shutdown(&req_wrap->req_, wrap->stream_, AfterShutdown);
req_wrap->Dispatched();
if (r) {
SetCOMErrno(wrap->com, uv_last_error(wrap->com->loop));
delete req_wrap;
do { return scope.Close(v8::Local<v8::Value>::New(v8::Null(__contextORisolate))); } while (0);
} else {
v8::Local<v8::Object> objr = req_wrap->object_->ToObject();
do { return scope.Close(objr); } while (0);
}
}
return scope.Close(v8::Local<v8::Value>::New(v8::Undefined())); }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment