Fixed a bug which causes the server to crash when a player that wasn't in a room disconnected. #1

Merged
arne merged 1 commits from :no-room-crash into master 2020-05-18 10:16:34 +02:00
2 changed files with 20 additions and 15 deletions
Showing only changes of commit 889d9a8065 - Show all commits

View File

@ -29,6 +29,7 @@ module.exports = {
"semi": [ "semi": [
"error", "error",
"always" "always"
] ],
"no-mixed-spaces-and-tabs": "off"
} }
}; };

View File

@ -31,8 +31,9 @@ app.get("/", (req, res) => {
io.on("connection", (socket) => { io.on("connection", (socket) => {
// Handle disconnection // Handle disconnection
socket.on("disconnect", () => { socket.on("disconnect", () => {
if (players[socket.id]) {
const room = players[socket.id].room; const room = players[socket.id].room;
delete players[socket.id];
var playerUpdate = {}; var playerUpdate = {};
if (io.sockets.adapter.rooms[room]) { if (io.sockets.adapter.rooms[room]) {
@ -48,6 +49,9 @@ io.on("connection", (socket) => {
if (io.sockets.adapter.rooms[room] == undefined) { if (io.sockets.adapter.rooms[room] == undefined) {
console.log(traffic.int + colours.room(`Room ${room} has been deleted due to a lack of players`)); console.log(traffic.int + colours.room(`Room ${room} has been deleted due to a lack of players`));
} }
}
delete players[socket.id];
}); });
// Request identification // Request identification