fix: only setMaxListeners when max listeners is not 0 (#3716)

This commit is contained in:
SpaceEEC
2020-01-24 16:41:37 +01:00
committed by GitHub
parent 40afbc1d7e
commit 903f6ca75f
3 changed files with 8 additions and 6 deletions

View File

@@ -63,11 +63,13 @@ class ReadyHandler extends AbstractHandler {
client.ws.connection.triggerReady();
}, 1200 * data.guilds.length);
client.setMaxListeners(data.guilds.length + 10);
const guildCount = data.guilds.length;
if (client.getMaxListeners() !== 0) client.setMaxListeners(client.getMaxListeners() + guildCount);
client.once('ready', () => {
client.syncGuilds();
client.setMaxListeners(10);
if (client.getMaxListeners() !== 0) client.setMaxListeners(client.getMaxListeners() - guildCount);
client.clearTimeout(t);
});

View File

@@ -33,7 +33,7 @@ class MessageCollector extends Collector {
*/
this.received = 0;
this.client.setMaxListeners(this.client.getMaxListeners() + 1);
if (this.client.getMaxListeners() !== 0) this.client.setMaxListeners(this.client.getMaxListeners() + 1);
this.client.on('message', this.listener);
// For backwards compatibility (remove in v12)
@@ -93,7 +93,7 @@ class MessageCollector extends Collector {
cleanup() {
this.removeListener('collect', this._reEmitter);
this.client.removeListener('message', this.listener);
this.client.setMaxListeners(this.client.getMaxListeners() - 1);
if (this.client.getMaxListeners() !== 0) this.client.setMaxListeners(this.client.getMaxListeners() - 1);
}
}

View File

@@ -39,7 +39,7 @@ class ReactionCollector extends Collector {
*/
this.total = 0;
this.client.setMaxListeners(this.client.getMaxListeners() + 1);
if (this.client.getMaxListeners() !== 0) this.client.setMaxListeners(this.client.getMaxListeners() + 1);
this.client.on('messageReactionAdd', this.listener);
}
@@ -78,7 +78,7 @@ class ReactionCollector extends Collector {
*/
cleanup() {
this.client.removeListener('messageReactionAdd', this.listener);
this.client.setMaxListeners(this.client.getMaxListeners() - 1);
if (this.client.getMaxListeners() !== 0) this.client.setMaxListeners(this.client.getMaxListeners() - 1);
}
}