diff --git a/src/websockets.js b/src/websockets.js index 4af2a7f28d..fb6480571c 100644 --- a/src/websockets.js +++ b/src/websockets.js @@ -69,6 +69,10 @@ var SocketIO = require('socket.io').listen(global.server,{log:false}), socket.on('disconnect', function() { user.go_offline(uid); delete users[hs.sessionID]; + var index = userSockets[uid].indexOf(socket); + if(index !== -1) { + userSockets[uid].splice(index, 1); + } }); socket.on('api:get_all_rooms', function(data) { @@ -267,13 +271,13 @@ var SocketIO = require('socket.io').listen(global.server,{log:false}), user.getUserField(uid, 'username', function(username) { var finalMessage = username + ' says : ' + msg; - for(var x=0;x>numSockets;x++) { + for(var x=0;x