<URL: http://bugs.freeciv.org/Ticket/Display.html?id=39582 >
Christian Prochaska wrote:
> As I understand it, the read was successful, but while the received data
> is being handled, the connection gets lost, which gets detected when
> trying to send data to the server in request_new_unit_activity(). The
> write error then causes the client to switch to pre-game state, which
> causes the unit pointer to be freed.
Switching to pre-game state in the middle of packet handling seems to be
a very, very bad idea.
I would think rather that the disconnect should be queued up to be
handled once current handlers have left. Failing that, your patch to
just ignore write errors might be the safest choice.
Freeciv-dev mailing list