In my case the root cause was a savegame incompatibilty.
void GameClient::disconnect in network/gameclient.cc creates the messagebox as:
UI::WLMessageBox mmb(d->modal, ....
d is a GameClientImpl* and modal is explicily set as nullpointer in the CTor.
modal is always set to the currently show window and then back to nullptr.
there ist a catch all in GameClient:run() that will call disconnect("CLIENT_CRASHED");
I assume the execption is raised in game.init_savegame(loader_ui, d->settings);
I will try setting d->modal to InteractiveGameBase as early as possible.
In my case the root cause was a savegame incompatibilty.
void GameClient: :disconnect in network/ gameclient. cc creates the messagebox as:
UI::WLMessageBox mmb(d->modal, ....
d is a GameClientImpl* and modal is explicily set as nullpointer in the CTor.
modal is always set to the currently show window and then back to nullptr.
there ist a catch all in GameClient:run() that will call disconnect( "CLIENT_ CRASHED" );
I assume the execption is raised in game.init_ savegame( loader_ ui, d->settings);
I will try setting d->modal to InteractiveGameBase as early as possible.