From 7a17cbfdeab03cad09e620a9cffaa4a3f7252f37 Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Tue, 31 Aug 2021 23:21:02 +0800 Subject: [PATCH] src: register external references of TTYWrap for snapshot PR-URL: https://github.com/nodejs/node/pull/39961 Reviewed-By: James M Snell Reviewed-By: Anna Henningsen Reviewed-By: Michael Dawson --- src/node_external_reference.h | 1 + src/tty_wrap.cc | 10 ++++++++++ src/tty_wrap.h | 2 ++ 3 files changed, 13 insertions(+) diff --git a/src/node_external_reference.h b/src/node_external_reference.h index 90035ae6966709..c336c62e77b5ee 100644 --- a/src/node_external_reference.h +++ b/src/node_external_reference.h @@ -68,6 +68,7 @@ class ExternalReferenceRegistry { V(report) \ V(task_queue) \ V(tcp_wrap) \ + V(tty_wrap) \ V(url) \ V(util) \ V(serdes) \ diff --git a/src/tty_wrap.cc b/src/tty_wrap.cc index 401c2513dbc628..1c749a9741c312 100644 --- a/src/tty_wrap.cc +++ b/src/tty_wrap.cc @@ -24,6 +24,7 @@ #include "env-inl.h" #include "handle_wrap.h" #include "node_buffer.h" +#include "node_external_reference.h" #include "stream_base-inl.h" #include "stream_wrap.h" #include "util-inl.h" @@ -40,6 +41,13 @@ using v8::Object; using v8::String; using v8::Value; +void TTYWrap::RegisterExternalReferences(ExternalReferenceRegistry* registry) { + registry->Register(New); + registry->Register(GetWindowSize); + registry->Register(SetRawMode); + registry->Register(IsTTY); +} + void TTYWrap::Initialize(Local target, Local unused, Local context, @@ -147,3 +155,5 @@ TTYWrap::TTYWrap(Environment* env, } // namespace node NODE_MODULE_CONTEXT_AWARE_INTERNAL(tty_wrap, node::TTYWrap::Initialize) +NODE_MODULE_EXTERNAL_REFERENCE(tty_wrap, + node::TTYWrap::RegisterExternalReferences) diff --git a/src/tty_wrap.h b/src/tty_wrap.h index fdf07e4242c1f8..5a7863cb585b1c 100644 --- a/src/tty_wrap.h +++ b/src/tty_wrap.h @@ -30,6 +30,7 @@ namespace node { class Environment; +class ExternalReferenceRegistry; class TTYWrap : public LibuvStreamWrap { public: @@ -37,6 +38,7 @@ class TTYWrap : public LibuvStreamWrap { v8::Local unused, v8::Local context, void* priv); + static void RegisterExternalReferences(ExternalReferenceRegistry* registry); SET_NO_MEMORY_INFO() SET_MEMORY_INFO_NAME(TTYWrap)