Skip to content

Commit ee1cc8b

Browse files
committed
src: remove calls to deprecated ArrayBuffer methods
v8::ArrayBuffer::IsExternal and v8::ArrayBuffer::Externalize are no longer necessary.
1 parent f7771ff commit ee1cc8b

File tree

4 files changed

+1
-18
lines changed

4 files changed

+1
-18
lines changed

src/js_native_api_v8.cc

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2720,9 +2720,6 @@ napi_status napi_create_external_arraybuffer(napi_env env,
27202720
nullptr);
27212721
v8::Local<v8::ArrayBuffer> buffer =
27222722
v8::ArrayBuffer::New(isolate, std::move(backing));
2723-
// TODO(thangktran): drop this check when V8 is pumped to 8.0 .
2724-
if (!buffer->IsExternal())
2725-
buffer->Externalize(buffer->GetBackingStore());
27262723
v8::Maybe<bool> marked = env->mark_arraybuffer_as_untransferable(buffer);
27272724
CHECK_MAYBE_NOTHING(env, marked, napi_generic_failure);
27282725

@@ -3184,9 +3181,6 @@ napi_status napi_detach_arraybuffer(napi_env env, napi_value arraybuffer) {
31843181
env, value->IsArrayBuffer(), napi_arraybuffer_expected);
31853182

31863183
v8::Local<v8::ArrayBuffer> it = value.As<v8::ArrayBuffer>();
3187-
// TODO(addaleax): Remove the first condition once we have V8 8.0.
3188-
RETURN_STATUS_IF_FALSE(
3189-
env, it->IsExternal(), napi_detachable_arraybuffer_expected);
31903184
RETURN_STATUS_IF_FALSE(
31913185
env, it->IsDetachable(), napi_detachable_arraybuffer_expected);
31923186

src/node_buffer.cc

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -417,9 +417,6 @@ MaybeLocal<Object> New(Environment* env,
417417
nullptr);
418418
Local<ArrayBuffer> ab = ArrayBuffer::New(env->isolate(),
419419
std::move(backing));
420-
// TODO(thangktran): drop this check when V8 is pumped to 8.0 .
421-
if (!ab->IsExternal())
422-
ab->Externalize(ab->GetBackingStore());
423420
if (ab->SetPrivate(env->context(),
424421
env->arraybuffer_untransferable_private_symbol(),
425422
True(env->isolate())).IsNothing()) {
@@ -1212,9 +1209,6 @@ void Initialize(Local<Object> target,
12121209
nullptr);
12131210
Local<ArrayBuffer> array_buffer =
12141211
ArrayBuffer::New(env->isolate(), std::move(backing));
1215-
// TODO(thangktran): drop this check when V8 is pumped to 8.0 .
1216-
if (!array_buffer->IsExternal())
1217-
array_buffer->Externalize(array_buffer->GetBackingStore());
12181212
array_buffer->SetPrivate(
12191213
env->context(),
12201214
env->arraybuffer_untransferable_private_symbol(),

src/node_messaging.cc

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -389,9 +389,6 @@ Maybe<bool> Message::Serialize(Environment* env,
389389
for (Local<ArrayBuffer> ab : array_buffers) {
390390
// If serialization succeeded, we render it inaccessible in this Isolate.
391391
std::shared_ptr<BackingStore> backing_store = ab->GetBackingStore();
392-
// TODO(addaleax): This can/should be dropped once we have V8 8.0.
393-
if (!ab->IsExternal())
394-
ab->Externalize(backing_store);
395392
ab->Detach();
396393

397394
array_buffers_.emplace_back(std::move(backing_store));

test/js-native-api/test_typedarray/test.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,7 @@ nonByteArrayTypes.forEach((currentType) => {
7878
// Test detaching
7979
arrayTypes.forEach((currentType) => {
8080
const buffer = Reflect.construct(currentType, [8]);
81-
assert.throws(
82-
() => test_typedarray.Detach(buffer),
83-
/A detachable arraybuffer was expected/);
81+
assert.doesNotThrow(() => test_typedarray.Detach(buffer));
8482
});
8583
{
8684
const buffer = test_typedarray.External();

0 commit comments

Comments
 (0)