Files
electron/patches/node/refactor_transferrablemodule_is_deprecated_use_compiledwasmmodule.patch
2020-05-06 22:47:58 -07:00

80 lines
3.7 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Samuel Attard <samuel.r.attard@gmail.com>
Date: Mon, 2 Dec 2019 17:25:38 -0800
Subject: refactor: TransferrableModule is deprecated, use CompiledWasmModule
instead
This is already present in Node.js v14 and can be removed when we upgrade.
diff --git a/src/node_messaging.cc b/src/node_messaging.cc
index c7c46063731a5b49366d8e8702b625162b361471..a8cfbec2f5bf2387312237114ab5eb058561b898 100644
--- a/src/node_messaging.cc
+++ b/src/node_messaging.cc
@@ -57,7 +57,7 @@ class DeserializerDelegate : public ValueDeserializer::Delegate {
Environment* env,
const std::vector<MessagePort*>& message_ports,
const std::vector<Local<SharedArrayBuffer>>& shared_array_buffers,
- const std::vector<WasmModuleObject::TransferrableModule>& wasm_modules)
+ const std::vector<v8::CompiledWasmModule>& wasm_modules)
: message_ports_(message_ports),
shared_array_buffers_(shared_array_buffers),
wasm_modules_(wasm_modules) {}
@@ -81,7 +81,7 @@ class DeserializerDelegate : public ValueDeserializer::Delegate {
MaybeLocal<WasmModuleObject> GetWasmModuleFromId(
Isolate* isolate, uint32_t transfer_id) override {
CHECK_LE(transfer_id, wasm_modules_.size());
- return WasmModuleObject::FromTransferrableModule(
+ return WasmModuleObject::FromCompiledModule(
isolate, wasm_modules_[transfer_id]);
}
@@ -90,7 +90,7 @@ class DeserializerDelegate : public ValueDeserializer::Delegate {
private:
const std::vector<MessagePort*>& message_ports_;
const std::vector<Local<SharedArrayBuffer>>& shared_array_buffers_;
- const std::vector<WasmModuleObject::TransferrableModule>& wasm_modules_;
+ const std::vector<v8::CompiledWasmModule>& wasm_modules_;
};
} // anonymous namespace
@@ -180,7 +180,7 @@ void Message::AddMessagePort(std::unique_ptr<MessagePortData>&& data) {
message_ports_.emplace_back(std::move(data));
}
-uint32_t Message::AddWASMModule(WasmModuleObject::TransferrableModule&& mod) {
+uint32_t Message::AddWASMModule(v8::CompiledWasmModule&& mod) {
wasm_modules_.emplace_back(std::move(mod));
return wasm_modules_.size() - 1;
}
@@ -277,7 +277,7 @@ class SerializerDelegate : public ValueSerializer::Delegate {
Maybe<uint32_t> GetWasmModuleTransferId(
Isolate* isolate, Local<WasmModuleObject> module) override {
- return Just(msg_->AddWASMModule(module->GetTransferrableModule()));
+ return Just(msg_->AddWASMModule(module->GetCompiledModule()));
}
void Finish() {
diff --git a/src/node_messaging.h b/src/node_messaging.h
index 43f710a84e831502bcfb574d2c456a0f9e815994..28986814b9f32ab310510f93ef9e6e97851e032d 100644
--- a/src/node_messaging.h
+++ b/src/node_messaging.h
@@ -58,7 +58,7 @@ class Message : public MemoryRetainer {
void AddMessagePort(std::unique_ptr<MessagePortData>&& data);
// Internal method of Message that is called when a new WebAssembly.Module
// object is encountered in the incoming value's structure.
- uint32_t AddWASMModule(v8::WasmModuleObject::TransferrableModule&& mod);
+ uint32_t AddWASMModule(v8::CompiledWasmModule&& mod);
// The MessagePorts that will be transferred, as recorded by Serialize().
// Used for warning user about posting the target MessagePort to itself,
@@ -77,7 +77,7 @@ class Message : public MemoryRetainer {
std::vector<MallocedBuffer<char>> array_buffer_contents_;
std::vector<SharedArrayBufferMetadataReference> shared_array_buffers_;
std::vector<std::unique_ptr<MessagePortData>> message_ports_;
- std::vector<v8::WasmModuleObject::TransferrableModule> wasm_modules_;
+ std::vector<v8::CompiledWasmModule> wasm_modules_;
friend class MessagePort;
};