lib: disable default memory leak warning for AbortSignal · nodejs/node@81c94a3 · GitHub
Skip to content

Commit 81c94a3

Browse files
phryneasruyadorno
authored andcommitted
lib: disable default memory leak warning for AbortSignal
This change sets the default `kMaxEventTargetListeners` property for `AbortSignal` instances to 0, disabling the check per default, to enable users to write isomorphic library code. If desirable, the max event target listeners check can still be enabled for individual `AbortSignal` instances by calling `setMaxListeners` on them. Refs: #54758 PR-URL: #55816 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
1 parent 381e705 commit 81c94a3

3 files changed

Lines changed: 29 additions & 11 deletions

File tree

doc/api/events.md

Lines changed: 4 additions & 0 deletions

lib/internal/abort_controller.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ const {
2828
kResistStopPropagation,
2929
kWeakHandler,
3030
} = require('internal/event_target');
31+
const { kMaxEventTargetListeners } = require('events');
3132
const {
3233
customInspectSymbol,
3334
kEmptyObject,
@@ -165,6 +166,7 @@ class AbortSignal extends EventTarget {
165166
}
166167
super();
167168

169+
this[kMaxEventTargetListeners] = 0;
168170
const {
169171
aborted = false,
170172
reason = undefined,

test/parallel/test-eventtarget-memoryleakwarning.js

Lines changed: 23 additions & 11 deletions

0 commit comments

Comments
 (0)