@@ -27,6 +27,7 @@ using v8::Isolate; |
27 | 27 | using v8::Just; |
28 | 28 | using v8::JustVoid; |
29 | 29 | using v8::Local; |
| 30 | +using v8::LocalVector; |
30 | 31 | using v8::Maybe; |
31 | 32 | using v8::MaybeLocal; |
32 | 33 | using v8::Nothing; |
@@ -74,7 +75,7 @@ class DeserializerDelegate : public ValueDeserializer::Delegate { |
74 | 75 | Message* m, |
75 | 76 | Environment* env, |
76 | 77 | const std::vector<BaseObjectPtr<BaseObject>>& host_objects, |
77 | | - const std::vector<Local<SharedArrayBuffer>>& shared_array_buffers, |
| 78 | + const LocalVector<SharedArrayBuffer>& shared_array_buffers, |
78 | 79 | const std::vector<CompiledWasmModule>& wasm_modules, |
79 | 80 | const std::optional<SharedValueConveyor>& shared_value_conveyor) |
80 | 81 | : env_(env), |
@@ -129,7 +130,7 @@ class DeserializerDelegate : public ValueDeserializer::Delegate { |
129 | 130 | private: |
130 | 131 | Environment* env_; |
131 | 132 | const std::vector<BaseObjectPtr<BaseObject>>& host_objects_; |
132 | | - const std::vector<Local<SharedArrayBuffer>>& shared_array_buffers_; |
| 133 | + const LocalVector<SharedArrayBuffer>& shared_array_buffers_; |
133 | 134 | const std::vector<CompiledWasmModule>& wasm_modules_; |
134 | 135 | const std::optional<SharedValueConveyor>& shared_value_conveyor_; |
135 | 136 | }; |
@@ -188,7 +189,7 @@ MaybeLocal<Value> Message::Deserialize(Environment* env, |
188 | 189 | } |
189 | 190 | transferables_.clear(); |
190 | 191 |
|
191 | | - std::vector<Local<SharedArrayBuffer>> shared_array_buffers; |
| 192 | + LocalVector<SharedArrayBuffer> shared_array_buffers(env->isolate()); |
192 | 193 | // Attach all transferred SharedArrayBuffers to their new Isolate. |
193 | 194 | for (uint32_t i = 0; i < shared_array_buffers_.size(); ++i) { |
194 | 195 | Local<SharedArrayBuffer> sab = |
@@ -477,7 +478,7 @@ Maybe<bool> Message::Serialize(Environment* env, |
477 | 478 | ValueSerializer serializer(env->isolate(), &delegate); |
478 | 479 | delegate.serializer = &serializer; |
479 | 480 |
|
480 | | - std::vector<Local<ArrayBuffer>> array_buffers; |
| 481 | + LocalVector<ArrayBuffer> array_buffers(env->isolate()); |
481 | 482 | for (uint32_t i = 0; i < transfer_list_v.length(); ++i) { |
482 | 483 | Local<Value> entry_val = transfer_list_v[i]; |
483 | 484 | if (!entry_val->IsObject()) { |
@@ -999,7 +1000,7 @@ static Maybe<bool> ReadIterable(Environment* env, |
999 | 1000 | return Nothing<bool>(); |
1000 | 1001 | if (!next->IsFunction()) return Just(false); |
1001 | 1002 |
|
1002 | | - std::vector<Local<Value>> entries; |
| 1003 | + LocalVector<Value> entries(isolate); |
1003 | 1004 | while (env->can_call_into_js()) { |
1004 | 1005 | Local<Value> result; |
1005 | 1006 | if (!next.As<Function>()->Call(context, iterator, 0, nullptr) |
|