Follow-up Comment #13, bug #16299 (project wesnoth):
rough idea for a fix:
I think that turn_info::process_network_data should check for whether a
client received *any* data from the current side already, and if not, call the
side initialization code or cause it to be called, perhaps by adding and
init_side child to the replay data. This turn_info::process_network_data
function is called once that the remaining client has ended its turn to
process the disconnecting client.
Normally, an init_side child appears to be added to the sent network data in
the disconnecting client, which gets read in the other client's
turn_info::process_network_data function and added to the replay data so that
their replay code calls the side initialization. This doesn't happen if this
client quits before it gets its turn. The problem is that the previous client
does already no longer have its turn as well so is expecting the side
init_side child...
_______________________________________________________
Reply to this item at:
<http://gna.org/bugs/?16299>
_______________________________________________
Nachricht geschickt von/durch Gna!
http://gna.org/
_______________________________________________
Wesnoth-bugs mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-bugs