Decompile `nuScRemoveClient`

This commit is contained in:
gijs 2023-10-20 12:18:28 +02:00
parent 774f762631
commit 34c7cfa70d
1 changed files with 20 additions and 1 deletions

View File

@ -35,7 +35,26 @@ void nuScAddClient(NUScClient* client, OSMesgQueue* queue, NUScMsg type) {
INCLUDE_ASM(const s32, "_ob_past_brick", func_800890E4); INCLUDE_ASM(const s32, "_ob_past_brick", func_800890E4);
INCLUDE_ASM(const s32, "_ob_past_brick", nuScRemoveClient); void nuScRemoveClient(NUScClient* client) {
s32 mask = osSetIntMask(OS_IM_NONE);
NUScClient* clientList = nusched.clientList;
NUScClient* prev = NULL;
while (clientList != NULL) {
if (clientList == client) {
if (prev != NULL) {
prev->next = clientList->next;
} else {
nusched.clientList = clientList->next;
}
break;
}
prev = clientList;
clientList = clientList->next;
}
osSetIntMask(mask);
}
INCLUDE_ASM(const s32, "_ob_past_brick", nuScEventBroadcast); INCLUDE_ASM(const s32, "_ob_past_brick", nuScEventBroadcast);