From 73aaab51061b21cc21f0102703ba203e155d359d Mon Sep 17 00:00:00 2001 From: SpaceEEC Date: Thu, 17 Jan 2019 11:34:10 +0100 Subject: [PATCH] fix(Guild): ignore voice states referencing an invalid channel This was causing an uncaught exception on startup (or whenever receiving such a payload) which is crashing the process. --- src/structures/Guild.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/structures/Guild.js b/src/structures/Guild.js index a0634e56a..cc7589603 100644 --- a/src/structures/Guild.js +++ b/src/structures/Guild.js @@ -225,14 +225,15 @@ class Guild { for (const voiceState of data.voice_states) { this._rawVoiceStates.set(voiceState.user_id, voiceState); const member = this.members.get(voiceState.user_id); - if (member) { + const voiceChannel = this.channels.get(voiceState.channel_id); + if (member && voiceChannel) { member.serverMute = voiceState.mute; member.serverDeaf = voiceState.deaf; member.selfMute = voiceState.self_mute; member.selfDeaf = voiceState.self_deaf; member.voiceSessionID = voiceState.session_id; member.voiceChannelID = voiceState.channel_id; - this.channels.get(voiceState.channel_id).members.set(member.user.id, member); + voiceChannel.members.set(member.user.id, member); } } }