diff options
author | Jude Melton-Houghton <jwmhjwmh@gmail.com> | 2022-01-27 16:24:30 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-27 22:24:30 +0100 |
commit | fc161e757c14a0d0b86e69fb5ec631fae8b448de (patch) | |
tree | d9fc31818916ab8f40238420e1e672fea5e121d9 /src/client/game.cpp | |
parent | 47735c273c96e582f6e9bceee223270ad2a99236 (diff) | |
download | hax-minetest-server-fc161e757c14a0d0b86e69fb5ec631fae8b448de.tar.gz hax-minetest-server-fc161e757c14a0d0b86e69fb5ec631fae8b448de.zip |
Automatically migrate client mod storage (#11960)
Diffstat (limited to '')
-rw-r--r-- | src/client/game.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/client/game.cpp b/src/client/game.cpp index b6052390b..7478e225f 100644 --- a/src/client/game.cpp +++ b/src/client/game.cpp @@ -1466,11 +1466,18 @@ bool Game::connectToServer(const GameStartData &start_data, return false; } - client = new Client(start_data.name.c_str(), - start_data.password, start_data.address, - *draw_control, texture_src, shader_src, - itemdef_manager, nodedef_manager, sound, eventmgr, - m_rendering_engine, connect_address.isIPv6(), m_game_ui.get()); + try { + client = new Client(start_data.name.c_str(), + start_data.password, start_data.address, + *draw_control, texture_src, shader_src, + itemdef_manager, nodedef_manager, sound, eventmgr, + m_rendering_engine, connect_address.isIPv6(), m_game_ui.get()); + client->migrateModStorage(); + } catch (const BaseException &e) { + *error_message = fmtgettext("Error creating client: %s", e.what()); + errorstream << *error_message << std::endl; + return false; + } client->m_simple_singleplayer_mode = simple_singleplayer_mode; |