diff options
| author | Skye Deving <76892045+skyedeving@users.noreply.github.com> | 2021-01-09 11:59:51 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-01-09 11:59:51 -0600 |
| commit | 05dd086fff26f951de41702df19d74767c8f711c (patch) | |
| tree | 8df4dffe00d4ba6a554a6eef138b5aaa7422c4b4 /src/lobby.cpp | |
| parent | 883fa8547d2d650ab28fcc91169e1d0068760ac9 (diff) | |
Fix segfault in server list without a server selection (#374)
Also bumps C++ version to C++17 (C++1z).
Diffstat (limited to 'src/lobby.cpp')
| -rw-r--r-- | src/lobby.cpp | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/lobby.cpp b/src/lobby.cpp index afbf221e..954c30a8 100644 --- a/src/lobby.cpp +++ b/src/lobby.cpp @@ -283,7 +283,10 @@ QString Lobby::get_chatlog() int Lobby::get_selected_server() { - return ui_server_list->currentItem()->text(0).toInt(); + if (auto item = ui_server_list->currentItem()) { + return item->text(0).toInt(); + } + return -1; } void Lobby::set_loading_value(int p_value) @@ -333,12 +336,12 @@ void Lobby::on_add_to_fav_pressed() void Lobby::on_add_to_fav_released() { ui_add_to_fav->set_image("addtofav"); - - // you cant add favorites from favorites m8 - if (!public_servers_selected) - return; - - ao_app->add_favorite_server(get_selected_server()); + if (public_servers_selected) { + int selection = get_selected_server(); + if (selection > -1) { + ao_app->add_favorite_server(selection); + } + } } void Lobby::on_connect_pressed() { ui_connect->set_image("connect_pressed"); } |
