diff options
author | Ben Noordhuis <info@bnoordhuis.nl> | 2013-07-02 17:11:31 +0200 |
---|---|---|
committer | Ben Noordhuis <info@bnoordhuis.nl> | 2013-07-06 16:53:06 +0200 |
commit | 704fd8f3745527fc080f96e54e5ec1857c505399 (patch) | |
tree | bff68e8a731f3618d3e8f1708aa9de194bc1f612 /deps/v8/src/d8.cc | |
parent | eec43351c44c0bec31a83e1a28be15e30722936a (diff) | |
download | node-new-704fd8f3745527fc080f96e54e5ec1857c505399.tar.gz |
v8: upgrade to v3.20.2
Diffstat (limited to 'deps/v8/src/d8.cc')
-rw-r--r-- | deps/v8/src/d8.cc | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/deps/v8/src/d8.cc b/deps/v8/src/d8.cc index a917dbdbe3..65af987b42 100644 --- a/deps/v8/src/d8.cc +++ b/deps/v8/src/d8.cc @@ -1076,14 +1076,15 @@ static char* ReadChars(Isolate* isolate, const char* name, int* size_out) { } static void ReadBufferWeakCallback(v8::Isolate* isolate, - Persistent<Value>* object, + Persistent<ArrayBuffer>* array_buffer, uint8_t* data) { - size_t byte_length = ArrayBuffer::Cast(**object)->ByteLength(); + size_t byte_length = + Local<ArrayBuffer>::New(isolate, *array_buffer)->ByteLength(); isolate->AdjustAmountOfExternalAllocatedMemory( -static_cast<intptr_t>(byte_length)); delete[] data; - object->Dispose(isolate); + array_buffer->Dispose(); } void Shell::ReadBuffer(const v8::FunctionCallbackInfo<v8::Value>& args) { @@ -1103,8 +1104,8 @@ void Shell::ReadBuffer(const v8::FunctionCallbackInfo<v8::Value>& args) { return; } Handle<v8::ArrayBuffer> buffer = ArrayBuffer::New(data, length); - v8::Persistent<v8::Value> weak_handle(isolate, buffer); - weak_handle.MakeWeak(isolate, data, ReadBufferWeakCallback); + v8::Persistent<v8::ArrayBuffer> weak_handle(isolate, buffer); + weak_handle.MakeWeak(data, ReadBufferWeakCallback); weak_handle.MarkIndependent(); isolate->AdjustAmountOfExternalAllocatedMemory(length); |