summaryrefslogtreecommitdiff
path: root/std/node/events.ts
diff options
context:
space:
mode:
Diffstat (limited to 'std/node/events.ts')
-rw-r--r--std/node/events.ts16
1 files changed, 9 insertions, 7 deletions
diff --git a/std/node/events.ts b/std/node/events.ts
index cb9acb0f5..fee715f0c 100644
--- a/std/node/events.ts
+++ b/std/node/events.ts
@@ -279,13 +279,15 @@ export default class EventEmitter {
return this;
}
- if (eventName && this._events.has(eventName)) {
- const listeners = (this._events.get(eventName) as Array<
- Function | WrappedFunction
- >).slice(); // Create a copy; We use it AFTER it's deleted.
- this._events.delete(eventName);
- for (const listener of listeners) {
- this.emit("removeListener", eventName, listener);
+ if (eventName) {
+ if (this._events.has(eventName)) {
+ const listeners = (this._events.get(eventName) as Array<
+ Function | WrappedFunction
+ >).slice(); // Create a copy; We use it AFTER it's deleted.
+ this._events.delete(eventName);
+ for (const listener of listeners) {
+ this.emit("removeListener", eventName, listener);
+ }
}
} else {
const eventList: [string | symbol] = this.eventNames();