mirror of
https://github.com/danbulant/discord.js
synced 2026-06-09 17:52:55 +00:00
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.
This commit is contained in:
parent
3b7b282b69
commit
73aaab5106
1 changed files with 3 additions and 2 deletions
|
|
@ -225,14 +225,15 @@ class Guild {
|
||||||
for (const voiceState of data.voice_states) {
|
for (const voiceState of data.voice_states) {
|
||||||
this._rawVoiceStates.set(voiceState.user_id, voiceState);
|
this._rawVoiceStates.set(voiceState.user_id, voiceState);
|
||||||
const member = this.members.get(voiceState.user_id);
|
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.serverMute = voiceState.mute;
|
||||||
member.serverDeaf = voiceState.deaf;
|
member.serverDeaf = voiceState.deaf;
|
||||||
member.selfMute = voiceState.self_mute;
|
member.selfMute = voiceState.self_mute;
|
||||||
member.selfDeaf = voiceState.self_deaf;
|
member.selfDeaf = voiceState.self_deaf;
|
||||||
member.voiceSessionID = voiceState.session_id;
|
member.voiceSessionID = voiceState.session_id;
|
||||||
member.voiceChannelID = voiceState.channel_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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue