Starting multiplayer game with an unused player number crash the game with assertion error

Bug #693021 reported by Hans Joachim Desserud
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
widelands
Fix Released
High
Unassigned

Bug Description

To reproduce:
1. From main menu, select "Multi player" -> "LAN / Direct IP" -> "Host a new game".
2. Select "map" and pick a map for three players.
3. Change your role to player 3.
4. Click on "Change map" and select a map for only two players.
5. Notice you are still listed as player 3, and that player 1 and 2 are open.
6. Click on the open positions of player 1 and 2 to populate them with AIs.
7. Click on "Start game"

The game crash with the following error message:

 WARNING: There are 31 unloaded objects. This is a bug, please consider committing!
Registering script: (win_conditions,00_endless_game)
[Host]: Requesting sync reports for time 1
widelands: /home/user/widelands/src/wui/interactive_player.cc:144: int32_t Int_Player_overlay_callback_function(Widelands::TCoords<Widelands::FCoords>, void*, int32_t): Assertion `static_cast<Interactive_Player const *>(data)->get_player()' failed.
Aborted

If a player has selected a position, and the map is changed to a smaller map where this position is not available, this should be handled in some way. Perhaps converting the player to a spectator?

Note: I am not sure if the warning in the error message is related or not, as it doesn't appear every time.

Tags: multiplayer
tags: added: multiplayer
Nasenbaer (nasenbaer)
Changed in widelands:
status: New → Confirmed
importance: Undecided → High
assignee: nobody → Nasenbaer (nasenbaer)
Nasenbaer (nasenbaer)
Changed in widelands:
assignee: Nasenbaer (nasenbaer) → nobody
status: Confirmed → Triaged
status: Triaged → Fix Committed
milestone: none → build16-rc1
Revision history for this message
SirVer (sirver) wrote :

Released in build16-rc1

Changed in widelands:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.