From: Ben Noordhuis Date: Tue, 8 Jan 2013 16:08:58 +0000 (+0100) Subject: typed arrays: undo local changes X-Git-Tag: v0.9.6~22 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7d66a9d06048601121220084f7f6d5672866d2ec;p=platform%2Fupstream%2Fnodejs.git typed arrays: undo local changes Partially revert 5664dd2, 6573fc3 and 7788a6b to ease landing changes from upstream. --- diff --git a/src/v8_typed_array.cc b/src/v8_typed_array.cc index 1918def..c9cf420 100644 --- a/src/v8_typed_array.cc +++ b/src/v8_typed_array.cc @@ -32,7 +32,6 @@ namespace { using node::ThrowRangeError; using node::ThrowTypeError; using node::ThrowError; -using node::node_isolate; struct BatchedMethods { const char* name; @@ -110,7 +109,7 @@ class ArrayBuffer { args.This()->SetAlignedPointerInInternalField(0, buf); args.This()->Set(v8::String::New("byteLength"), - v8::Integer::NewFromUnsigned(num_bytes, node_isolate), + v8::Integer::NewFromUnsigned(num_bytes), (v8::PropertyAttribute)(v8::ReadOnly|v8::DontDelete)); // NOTE(deanm): This is not in the spec, you shouldn't be able to index @@ -152,13 +151,11 @@ class ArrayBuffer { unsigned int slice_length = end - begin; v8::Local argv[] = { - v8::Integer::New(slice_length, node_isolate)}; + v8::Integer::New(slice_length)}; v8::Local buffer = ArrayBuffer::GetTemplate()-> GetFunction()->NewInstance(1, argv); - if (buffer.IsEmpty()) { - return v8::Undefined(node_isolate); // constructor failed - } + if (buffer.IsEmpty()) return v8::Undefined(); // constructor failed void* src = args.This()->GetAlignedPointerFromInternalField(0); void* dest = buffer->GetAlignedPointerFromInternalField(0); @@ -282,7 +279,7 @@ class TypedArray { } void* buf = buffer->GetIndexedPropertiesExternalArrayData(); - char* begin = static_cast(buf) + byte_offset; + char* begin = reinterpret_cast(buf) + byte_offset; if (!checkAlignment(reinterpret_cast(begin), TBytes)) return ThrowRangeError("Byte offset is not aligned."); @@ -296,12 +293,10 @@ class TypedArray { // TODO(deanm): Handle integer overflow. v8::Local argv[1] = { - v8::Integer::NewFromUnsigned(length * TBytes, node_isolate)}; + v8::Integer::NewFromUnsigned(length * TBytes)}; buffer = ArrayBuffer::GetTemplate()-> GetFunction()->NewInstance(1, argv); - if (buffer.IsEmpty()) { - return v8::Undefined(node_isolate); // constructor failed - } + if (buffer.IsEmpty()) return v8::Undefined(); // constructor failed void* buf = buffer->GetAlignedPointerFromInternalField(0); args.This()->SetIndexedPropertiesToExternalArrayData( @@ -326,13 +321,11 @@ class TypedArray { length = args[0]->Uint32Value(); // TODO(deanm): Handle integer overflow. v8::Local argv[1] = { - v8::Integer::NewFromUnsigned(length * TBytes, node_isolate)}; + v8::Integer::NewFromUnsigned(length * TBytes)}; buffer = ArrayBuffer::GetTemplate()-> GetFunction()->NewInstance(1, argv); - if (buffer.IsEmpty()) { - return v8::Undefined(node_isolate); // constructor failed - } + if (buffer.IsEmpty()) return v8::Undefined(); // constructor failed void* buf = buffer->GetAlignedPointerFromInternalField(0); args.This()->SetIndexedPropertiesToExternalArrayData( @@ -344,14 +337,13 @@ class TypedArray { buffer, (v8::PropertyAttribute)(v8::ReadOnly|v8::DontDelete)); args.This()->Set(v8::String::New("length"), - v8::Integer::NewFromUnsigned(length, node_isolate), + v8::Integer::NewFromUnsigned(length), (v8::PropertyAttribute)(v8::ReadOnly|v8::DontDelete)); args.This()->Set(v8::String::New("byteOffset"), - v8::Integer::NewFromUnsigned(byte_offset, node_isolate), + v8::Integer::NewFromUnsigned(byte_offset), (v8::PropertyAttribute)(v8::ReadOnly|v8::DontDelete)); args.This()->Set(v8::String::New("byteLength"), - v8::Integer::NewFromUnsigned(length * TBytes, - node_isolate), + v8::Integer::NewFromUnsigned(length * TBytes), (v8::PropertyAttribute)(v8::ReadOnly|v8::DontDelete)); return args.This(); @@ -364,7 +356,7 @@ class TypedArray { if (args[0]->IsNumber()) return args.This()->Get(args[0]->Uint32Value()); - return v8::Undefined(node_isolate); + return v8::Undefined(); } static v8::Handle set(const v8::Arguments& args) { @@ -406,7 +398,7 @@ class TypedArray { // place as if all the data is first copied into a temporary buffer that // does not overlap either of the arrays, and then the data from the // temporary buffer is copied into the current array. - memmove(static_cast(dst_ptr) + offset * TBytes, src_ptr, + memmove(reinterpret_cast(dst_ptr) + offset * TBytes, src_ptr, src_length * TBytes); } else { // type[] if (args[1]->Int32Value() < 0) @@ -431,7 +423,7 @@ class TypedArray { } } - return v8::Undefined(node_isolate); + return v8::Undefined(); } static v8::Handle subarray(const v8::Arguments& args) { @@ -460,8 +452,8 @@ class TypedArray { // Call through to the ArrayBuffer, byteOffset, length constructor. v8::Local argv[] = { args.This()->Get(v8::String::New("buffer")), - v8::Integer::New(byte_offset, node_isolate), - v8::Integer::New(end - begin, node_isolate)}; + v8::Integer::New(byte_offset), + v8::Integer::New(end - begin)}; return TypedArray::GetTemplate()-> GetFunction()->NewInstance(3, argv); } @@ -479,37 +471,37 @@ class Float64Array : public TypedArray<8, v8::kExternalDoubleArray> { }; template v8::Handle cTypeToValue(T) { - return v8::Undefined(node_isolate); + return v8::Undefined(); } template <> v8::Handle cTypeToValue(unsigned char val) { - return v8::Integer::NewFromUnsigned(val, node_isolate); + return v8::Integer::NewFromUnsigned(val); } template <> v8::Handle cTypeToValue(signed char val) { - return v8::Integer::New(val, node_isolate); + return v8::Integer::New(val); } template <> v8::Handle cTypeToValue(unsigned short val) { - return v8::Integer::NewFromUnsigned(val, node_isolate); + return v8::Integer::NewFromUnsigned(val); } template <> v8::Handle cTypeToValue(short val) { - return v8::Integer::New(val, node_isolate); + return v8::Integer::New(val); } template <> v8::Handle cTypeToValue(unsigned int val) { - return v8::Integer::NewFromUnsigned(val, node_isolate); + return v8::Integer::NewFromUnsigned(val); } template <> v8::Handle cTypeToValue(int val) { - return v8::Integer::New(val, node_isolate); + return v8::Integer::New(val); } template <> @@ -658,17 +650,17 @@ class DataView { // Like ArrayBuffer, we violate the spec and add an operator[]. args.This()->SetIndexedPropertiesToExternalArrayData( - static_cast(buf) + byte_offset, + reinterpret_cast(buf) + byte_offset, v8::kExternalUnsignedByteArray, byte_length); args.This()->Set(v8::String::New("buffer"), buffer, (v8::PropertyAttribute)(v8::ReadOnly|v8::DontDelete)); args.This()->Set(v8::String::New("byteOffset"), - v8::Integer::NewFromUnsigned(byte_offset, node_isolate), + v8::Integer::NewFromUnsigned(byte_offset), (v8::PropertyAttribute)(v8::ReadOnly|v8::DontDelete)); args.This()->Set(v8::String::New("byteLength"), - v8::Integer::NewFromUnsigned(byte_length, node_isolate), + v8::Integer::NewFromUnsigned(byte_length), (v8::PropertyAttribute)(v8::ReadOnly|v8::DontDelete)); return args.This(); } @@ -685,7 +677,7 @@ class DataView { template static T getValue(void* ptr, unsigned int index, bool swiz) { char buf[sizeof(T)]; - memcpy(buf, static_cast(ptr) + index, sizeof(T)); + memcpy(buf, reinterpret_cast(ptr) + index, sizeof(T)); if (swiz) swizzle(buf, sizeof(T)); T val; @@ -699,7 +691,7 @@ class DataView { memcpy(buf, &val, sizeof(T)); if (swiz) swizzle(buf, sizeof(T)); - memcpy(static_cast(ptr) + index, buf, sizeof(T)); + memcpy(reinterpret_cast(ptr) + index, buf, sizeof(T)); } template @@ -740,7 +732,7 @@ class DataView { void* ptr = args.This()->GetIndexedPropertiesExternalArrayData(); setValue(ptr, index, valueToCType(args[1]), !little_endian); - return v8::Undefined(node_isolate); + return v8::Undefined(); } static v8::Handle getUint8(const v8::Arguments& args) {