summaryrefslogtreecommitdiff
path: root/deps/v8
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8')
-rw-r--r--deps/v8/src/api/api.cc1
-rw-r--r--deps/v8/test/cctest/test-api.cc8
2 files changed, 7 insertions, 2 deletions
diff --git a/deps/v8/src/api/api.cc b/deps/v8/src/api/api.cc
index aa61346d63..8be7f8558c 100644
--- a/deps/v8/src/api/api.cc
+++ b/deps/v8/src/api/api.cc
@@ -1314,6 +1314,7 @@ void Context::SetEmbedderData(int index, v8::Local<Value> value) {
void* Context::SlowGetAlignedPointerFromEmbedderData(int index) {
const char* location = "v8::Context::GetAlignedPointerFromEmbedderData()";
+ HandleScope handle_scope(GetIsolate());
i::Handle<i::EmbedderDataArray> data =
EmbedderDataFor(this, index, false, location);
if (data.is_null()) return nullptr;
diff --git a/deps/v8/test/cctest/test-api.cc b/deps/v8/test/cctest/test-api.cc
index ae3cf3e875..345ee0bfc9 100644
--- a/deps/v8/test/cctest/test-api.cc
+++ b/deps/v8/test/cctest/test-api.cc
@@ -2955,8 +2955,11 @@ THREADED_TEST(SetAlignedPointerInInternalFields) {
obj->SetAlignedPointerInInternalFields(2, indices, values);
CcTest::CollectAllGarbage();
- CHECK_EQ(heap_allocated_1, obj->GetAlignedPointerFromInternalField(0));
- CHECK_EQ(heap_allocated_2, obj->GetAlignedPointerFromInternalField(1));
+ {
+ v8::SealHandleScope no_handle_leak(isolate);
+ CHECK_EQ(heap_allocated_1, obj->GetAlignedPointerFromInternalField(0));
+ CHECK_EQ(heap_allocated_2, obj->GetAlignedPointerFromInternalField(1));
+ }
indices[0] = 1;
indices[1] = 0;
@@ -3009,6 +3012,7 @@ THREADED_TEST(EmbedderDataAlignedPointers) {
}
CcTest::CollectAllGarbage();
for (int i = 0; i < 100; i++) {
+ v8::SealHandleScope no_handle_leak(env->GetIsolate());
CHECK_EQ(AlignedTestPointer(i), env->GetAlignedPointerFromEmbedderData(i));
}
}