src: fix warning in node_messaging

PR-URL: https://github.com/nodejs/node/pull/26682
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
ZYSzys 2019-03-15 21:12:01 +08:00 committed by Anna Henningsen
parent c32615ccac
commit 0752a18b88
No known key found for this signature in database
GPG Key ID: 9C63F3A6CD2AD8F9
2 changed files with 11 additions and 11 deletions

View File

@ -30,7 +30,7 @@ using v8::String;
using v8::Value; using v8::Value;
using v8::ValueDeserializer; using v8::ValueDeserializer;
using v8::ValueSerializer; using v8::ValueSerializer;
using v8::WasmCompiledModule; using v8::WasmModuleObject;
namespace node { namespace node {
namespace worker { namespace worker {
@ -49,7 +49,7 @@ class DeserializerDelegate : public ValueDeserializer::Delegate {
Environment* env, Environment* env,
const std::vector<MessagePort*>& message_ports, const std::vector<MessagePort*>& message_ports,
const std::vector<Local<SharedArrayBuffer>>& shared_array_buffers, const std::vector<Local<SharedArrayBuffer>>& shared_array_buffers,
const std::vector<WasmCompiledModule::TransferrableModule>& wasm_modules) const std::vector<WasmModuleObject::TransferrableModule>& wasm_modules)
: message_ports_(message_ports), : message_ports_(message_ports),
shared_array_buffers_(shared_array_buffers), shared_array_buffers_(shared_array_buffers),
wasm_modules_(wasm_modules) {} wasm_modules_(wasm_modules) {}
@ -70,10 +70,10 @@ class DeserializerDelegate : public ValueDeserializer::Delegate {
return shared_array_buffers_[clone_id]; return shared_array_buffers_[clone_id];
} }
MaybeLocal<WasmCompiledModule> GetWasmModuleFromId( MaybeLocal<WasmModuleObject> GetWasmModuleFromId(
Isolate* isolate, uint32_t transfer_id) override { Isolate* isolate, uint32_t transfer_id) override {
CHECK_LE(transfer_id, wasm_modules_.size()); CHECK_LE(transfer_id, wasm_modules_.size());
return WasmCompiledModule::FromTransferrableModule( return WasmModuleObject::FromTransferrableModule(
isolate, wasm_modules_[transfer_id]); isolate, wasm_modules_[transfer_id]);
} }
@ -82,7 +82,7 @@ class DeserializerDelegate : public ValueDeserializer::Delegate {
private: private:
const std::vector<MessagePort*>& message_ports_; const std::vector<MessagePort*>& message_ports_;
const std::vector<Local<SharedArrayBuffer>>& shared_array_buffers_; const std::vector<Local<SharedArrayBuffer>>& shared_array_buffers_;
const std::vector<WasmCompiledModule::TransferrableModule>& wasm_modules_; const std::vector<WasmModuleObject::TransferrableModule>& wasm_modules_;
}; };
} // anonymous namespace } // anonymous namespace
@ -170,7 +170,7 @@ void Message::AddMessagePort(std::unique_ptr<MessagePortData>&& data) {
message_ports_.emplace_back(std::move(data)); message_ports_.emplace_back(std::move(data));
} }
uint32_t Message::AddWASMModule(WasmCompiledModule::TransferrableModule&& mod) { uint32_t Message::AddWASMModule(WasmModuleObject::TransferrableModule&& mod) {
wasm_modules_.emplace_back(std::move(mod)); wasm_modules_.emplace_back(std::move(mod));
return wasm_modules_.size() - 1; return wasm_modules_.size() - 1;
} }
@ -235,7 +235,7 @@ class SerializerDelegate : public ValueSerializer::Delegate {
} }
Maybe<uint32_t> GetWasmModuleTransferId( Maybe<uint32_t> GetWasmModuleTransferId(
Isolate* isolate, Local<WasmCompiledModule> module) override { Isolate* isolate, Local<WasmModuleObject> module) override {
return Just(msg_->AddWASMModule(module->GetTransferrableModule())); return Just(msg_->AddWASMModule(module->GetTransferrableModule()));
} }
@ -302,7 +302,7 @@ Maybe<bool> Message::Serialize(Environment* env,
Local<ArrayBuffer> ab = entry.As<ArrayBuffer>(); Local<ArrayBuffer> ab = entry.As<ArrayBuffer>();
// If we cannot render the ArrayBuffer unusable in this Isolate and // If we cannot render the ArrayBuffer unusable in this Isolate and
// take ownership of its memory, copying the buffer will have to do. // take ownership of its memory, copying the buffer will have to do.
if (!ab->IsNeuterable() || ab->IsExternal() || if (!ab->IsDetachable() || ab->IsExternal() ||
!env->isolate_data()->uses_node_allocator()) { !env->isolate_data()->uses_node_allocator()) {
continue; continue;
} }
@ -368,7 +368,7 @@ Maybe<bool> Message::Serialize(Environment* env,
// (a.k.a. externalize) the underlying memory region and render // (a.k.a. externalize) the underlying memory region and render
// it inaccessible in this Isolate. // it inaccessible in this Isolate.
ArrayBuffer::Contents contents = ab->Externalize(); ArrayBuffer::Contents contents = ab->Externalize();
ab->Neuter(); ab->Detach();
CHECK(env->isolate_data()->uses_node_allocator()); CHECK(env->isolate_data()->uses_node_allocator());
env->isolate_data()->node_allocator()->UnregisterPointer( env->isolate_data()->node_allocator()->UnregisterPointer(

View File

@ -49,7 +49,7 @@ class Message : public MemoryRetainer {
void AddMessagePort(std::unique_ptr<MessagePortData>&& data); void AddMessagePort(std::unique_ptr<MessagePortData>&& data);
// Internal method of Message that is called when a new WebAssembly.Module // Internal method of Message that is called when a new WebAssembly.Module
// object is encountered in the incoming value's structure. // object is encountered in the incoming value's structure.
uint32_t AddWASMModule(v8::WasmCompiledModule::TransferrableModule&& mod); uint32_t AddWASMModule(v8::WasmModuleObject::TransferrableModule&& mod);
// The MessagePorts that will be transferred, as recorded by Serialize(). // The MessagePorts that will be transferred, as recorded by Serialize().
// Used for warning user about posting the target MessagePort to itself, // Used for warning user about posting the target MessagePort to itself,
@ -68,7 +68,7 @@ class Message : public MemoryRetainer {
std::vector<MallocedBuffer<char>> array_buffer_contents_; std::vector<MallocedBuffer<char>> array_buffer_contents_;
std::vector<SharedArrayBufferMetadataReference> shared_array_buffers_; std::vector<SharedArrayBufferMetadataReference> shared_array_buffers_;
std::vector<std::unique_ptr<MessagePortData>> message_ports_; std::vector<std::unique_ptr<MessagePortData>> message_ports_;
std::vector<v8::WasmCompiledModule::TransferrableModule> wasm_modules_; std::vector<v8::WasmModuleObject::TransferrableModule> wasm_modules_;
friend class MessagePort; friend class MessagePort;
}; };