diff --git a/src/protocols/gamespy/protocols/three/protocol.rs b/src/protocols/gamespy/protocols/three/protocol.rs index 1c78ada..08cbf6d 100644 --- a/src/protocols/gamespy/protocols/three/protocol.rs +++ b/src/protocols/gamespy/protocols/three/protocol.rs @@ -248,6 +248,10 @@ fn parse_players_and_teams(packets: Vec>) -> GDResult<(Vec, Vec< let mut players: Vec = Vec::new(); for player_data in players_data { + if player_data.is_empty() { + continue; + } + players.push(Player { name: player_data .get("player") @@ -283,6 +287,10 @@ fn parse_players_and_teams(packets: Vec>) -> GDResult<(Vec, Vec< let mut teams: Vec = Vec::new(); for team_data in teams_data { + if team_data.is_empty() { + continue; + } + teams.push(Team { name: team_data.get("team").ok_or(GDError::PacketBad)?.to_string(), score: team_data