events: support event handlers on prototypes · nodejs/node@ab0eb4f · GitHub
Skip to content

Commit ab0eb4f

Browse files
benjamingrdanielleadams
authored andcommitted
events: support event handlers on prototypes
PR-URL: #35931 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
1 parent 33e2ee5 commit ab0eb4f

3 files changed

Lines changed: 18 additions & 12 deletions

File tree

lib/internal/event_target.js

Lines changed: 13 additions & 6 deletions

lib/internal/worker/io.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,13 +146,14 @@ ObjectDefineProperty(
146146
// This is called from inside the `MessagePort` constructor.
147147
function oninit() {
148148
initNodeEventTarget(this);
149-
// TODO(addaleax): This should be on MessagePort.prototype, but
150-
// defineEventHandler() does not support that.
151149
defineEventHandler(this, 'message');
152150
defineEventHandler(this, 'messageerror');
153151
setupPortReferencing(this, this, 'message');
154152
}
155153

154+
defineEventHandler(MessagePort.prototype, 'message');
155+
defineEventHandler(MessagePort.prototype, 'messageerror');
156+
156157
ObjectDefineProperty(MessagePort.prototype, onInitSymbol, {
157158
enumerable: true,
158159
writable: false,

test/parallel/test-worker-message-port.js

Lines changed: 2 additions & 4 deletions

0 commit comments

Comments
 (0)