stream_wrap: fix memory leak on early return

pull/1158/head
Brian White 2013-05-07 18:01:42 -04:00 committed by Ben Noordhuis
parent b7f6e6b42f
commit aca275f58d
1 changed files with 3 additions and 3 deletions

View File

@ -538,9 +538,6 @@ Handle<Value> StreamWrap::Writev(const Arguments& args) {
uv_buf_t bufs_[16];
uv_buf_t* bufs = bufs_;
if (ARRAY_SIZE(bufs_) < count)
bufs = new uv_buf_t[count];
// Determine storage size first
size_t storage_size = 0;
for (size_t i = 0; i < count; i++) {
@ -578,6 +575,9 @@ Handle<Value> StreamWrap::Writev(const Arguments& args) {
return scope.Close(v8::Null(node_isolate));
}
if (ARRAY_SIZE(bufs_) < count)
bufs = new uv_buf_t[count];
storage_size += sizeof(WriteWrap);
char* storage = new char[storage_size];
WriteWrap* req_wrap = new (storage) WriteWrap();