Players not disconnecting/Server crashing when player disconnected via RC2.


I’ve encountered an issue where the players are not disappearing after they disconnect. The RC list continues to show the player in the ‘Players’ window and other players still see the account in the F7 list on the client. If I disconnect a player (that’s still actively playing) via RC2 the server itself crashes.

Using latest trunk, compiled in vc++.

Not really sure where to look for this one, I see some commented out code in void CSocket::disconnect() but was wondering if anyone’s seen this before in the past.

Also wondering about the RC2 src, is that available anywhere to tinker with?

Thanks again.

Doesn’t this happen when you lag out (or randomly get disconnected) even with a regular player? I know I’ve had that happen a few times in 1.39 and I had to either boot myself with RC or wait until the server removed me after awhile.

Thanks for your reply Danger,

Let me clarify here:

The players don’t seem to be lagging out, merely showing up as online once they willingly disconnect from the server. Once a player has disconnected from the server, they are still visible in the player list (from the remote control, as well as the client player list).

Also, players are able to reconnect immediately after they disconnect. Therefore not similar to the lagging out issue you mentioned above. I will also mention that it seems the player list shows multiple instances of the same account as being connected only if that account has disconnected and reconnected 1 or more times.

Sounds like a job for Nalin…

As another follow up, I recompiled the latest trunk, using all default settings (running the server from its own, new directory) and then signed on with a newly created account. As soon as I disconnect myself via the RC, the server crashes.

I assume you’re running this on linux? I have this problem on Linux, except it happens randomly when people disconnect themselves from the server or lags out.

This is actually running in Windows Vista.

___Merged doublepost__________________

As another follow up to this, running the GServer that’s posted in the downloads section ( the issue does not appear, I can disconnect players via the RC without the GServer crashing and when the client disconnects the players disappear from the list of players in the RC. This is only with the trunk version that the issue appears. Is there a list of code changes I could review?

Thanks again for the assistance.

___Merged doublepost__________________

As yet another follow up, downloading and compiling the version here:
rather than the trunk, the issue does not exist.

I fixed the RC crash in the latest SVN version. I did another round of code tracing to fix the disconnection related crashes. Hopefully it should all be fixed now.