Skip to content

Commit d2f574b

Browse files
watildetargos
authored andcommitted
lib: let abort_controller target be EventTarget
The AbortController abort event should have EventTarget as a target property of the argument event. PR-URL: #35869 Refs: https://github.com/web-platform-tests/wpt/blob/master/dom/abort/event.any.js Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
1 parent 1303a1f commit d2f574b

File tree

2 files changed

+4
-6
lines changed

2 files changed

+4
-6
lines changed

lib/internal/abort_controller.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ const {
1010
} = primordials;
1111

1212
const {
13+
defineEventHandler,
1314
EventTarget,
1415
Event,
1516
kTrustEvent
@@ -53,9 +54,6 @@ function abortSignal(signal) {
5354
const event = new Event('abort', {
5455
[kTrustEvent]: true
5556
});
56-
if (typeof signal.onabort === 'function') {
57-
signal.onabort(event);
58-
}
5957
signal.dispatchEvent(event);
6058
}
6159

@@ -67,6 +65,7 @@ class AbortController {
6765
constructor() {
6866
this[kSignal] = new AbortSignal();
6967
emitExperimentalWarning('AbortController');
68+
defineEventHandler(this[kSignal], 'abort');
7069
}
7170

7271
get signal() { return this[kSignal]; }

lib/internal/event_target.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -334,14 +334,13 @@ class EventTarget {
334334
}
335335
return event;
336336
};
337+
if (event !== undefined)
338+
event[kTarget] = this;
337339

338340
const root = this[kEvents].get(type);
339341
if (root === undefined || root.next === undefined)
340342
return true;
341343

342-
if (event !== undefined)
343-
event[kTarget] = this;
344-
345344
let handler = root.next;
346345
let next;
347346

0 commit comments

Comments
 (0)