From c742dc34f77283c4f53ede973780d35903619bb5 Mon Sep 17 00:00:00 2001 From: smallmodel <15067410+smallmodel@users.noreply.github.com> Date: Sun, 27 Apr 2025 21:20:45 +0200 Subject: [PATCH] Fix server list transitioning to idle even when it hasn't finished fetching --- code/gamespy/gserverlist.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/code/gamespy/gserverlist.c b/code/gamespy/gserverlist.c index c780565a..83f94b28 100644 --- a/code/gamespy/gserverlist.c +++ b/code/gamespy/gserverlist.c @@ -1052,7 +1052,12 @@ static GError ServerListQueryLoop(GServerList serverlist) if (serverlist->abortupdate || (serverlist->nextupdate >= ArrayLength(serverlist->servers) && scount == 0)) { //we are done!! FreeUpdateList(serverlist); - if (!serverlist->abortupdate && serverlist->startslindex < ServerListGetNumMasters()) { + if (serverlist->abortupdate) { + ServerListModeChange(serverlist, sl_idle); + return 0; + } + + if (serverlist->startslindex < ServerListGetNumMasters() || !ServerListFinishedList(serverlist)) { ServerListModeChange(serverlist, sl_listxfer); } else { // No more masters