summaryrefslogtreecommitdiff
path: root/deps/v8/src/d8.cc
diff options
context:
space:
mode:
authorBen Noordhuis <info@bnoordhuis.nl>2013-07-02 17:11:31 +0200
committerBen Noordhuis <info@bnoordhuis.nl>2013-07-06 16:53:06 +0200
commit704fd8f3745527fc080f96e54e5ec1857c505399 (patch)
treebff68e8a731f3618d3e8f1708aa9de194bc1f612 /deps/v8/src/d8.cc
parenteec43351c44c0bec31a83e1a28be15e30722936a (diff)
downloadnode-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.cc11
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);