Fix game crash.

WHen overlay is shown, you have at least 1 friend connected and you resize the game window smaller to the friend list position, it crashes because ImGui::ListBoxHeader returns false when its clipped and ImGui::ListBoxFooter shouldn't be called.
This commit is contained in:
Nemirtingas 2021-05-09 10:11:35 +02:00
parent ff6c3e994b
commit 76c9e7a9ee

View file

@ -657,7 +657,8 @@ void Steam_Overlay::OverlayProc()
std::lock_guard<std::recursive_mutex> lock(overlay_mutex); std::lock_guard<std::recursive_mutex> lock(overlay_mutex);
if (!friends.empty()) if (!friends.empty())
{ {
ImGui::ListBoxHeader("##label", friends.size()); if (ImGui::ListBoxHeader("##label", friends.size()))
{
std::for_each(friends.begin(), friends.end(), [this](std::pair<Friend const, friend_window_state> &i) std::for_each(friends.begin(), friends.end(), [this](std::pair<Friend const, friend_window_state> &i)
{ {
ImGui::PushID(i.second.id-base_friend_window_id+base_friend_item_id); ImGui::PushID(i.second.id-base_friend_window_id+base_friend_item_id);
@ -675,6 +676,7 @@ void Steam_Overlay::OverlayProc()
ImGui::ListBoxFooter(); ImGui::ListBoxFooter();
} }
} }
}
ImGui::End(); ImGui::End();
ImGui::PopFont(); ImGui::PopFont();