diff --git a/lib/internal/event_target.js b/lib/internal/event_target.js index ddab605c8a3c6a..e962c8b02399f4 100644 --- a/lib/internal/event_target.js +++ b/lib/internal/event_target.js @@ -371,7 +371,7 @@ class EventTarget { initEventTarget(this); } - [kNewListener](size, type, listener, once, capture, passive) { + [kNewListener](size, type, listener, once, capture, passive, weak) { if (this[kMaxEventTargetListeners] > 0 && size > this[kMaxEventTargetListeners] && !this[kMaxEventTargetListenersWarned]) { @@ -440,7 +440,14 @@ class EventTarget { // This is the first handler in our linked list. new Listener(root, listener, once, capture, passive, isNodeStyleListener, weak); - this[kNewListener](root.size, type, listener, once, capture, passive); + this[kNewListener]( + root.size, + type, + listener, + once, + capture, + passive, + weak); this[kEvents].set(type, root); return; } @@ -461,7 +468,7 @@ class EventTarget { new Listener(previous, listener, once, capture, passive, isNodeStyleListener, weak); root.size++; - this[kNewListener](root.size, type, listener, once, capture, passive); + this[kNewListener](root.size, type, listener, once, capture, passive, weak); } removeEventListener(type, listener, options = {}) { @@ -811,7 +818,7 @@ function defineEventHandler(emitter, name) { if (typeof wrappedHandler.handler === 'function') { this[kEvents].get(name).size++; const size = this[kEvents].get(name).size; - this[kNewListener](size, name, value, false, false, false); + this[kNewListener](size, name, value, false, false, false, false); } } else { wrappedHandler = makeEventHandler(value);