From c71a4b27eeca2bbf6da4a6d41cf7d5b2b6cdb20e Mon Sep 17 00:00:00 2001 From: gijs Date: Sun, 22 Oct 2023 13:45:36 +0200 Subject: [PATCH] Clean up `nuContReadNWImpl` --- src/nu/nucontmgr.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/nu/nucontmgr.c b/src/nu/nucontmgr.c index fcfd2c2..a437e53 100644 --- a/src/nu/nucontmgr.c +++ b/src/nu/nucontmgr.c @@ -103,18 +103,20 @@ void nuContReadImpl(Arg___calls_read_controller_1* arg) { nuContReadDataImpl(arg->data, 0); } -s32 nuContReadNWImpl(s16* arg0) { - s32 var_v0; +s32 nuContReadNWImpl(NUSiCommonMesg* mesg) { + s32 rtn; - osRecvMesg(&nuContWaitMesgQ, NULL, 0); - var_v0 = nuContReadDataImpl(nuContData, 0); - if (var_v0 == 0) { - if (nuContReadFunc != NULL) { - nuContReadFunc(*arg0); - } - return 0; - } else { - return var_v0; + osRecvMesg(&nuContWaitMesgQ, NULL, OS_MESG_NOBLOCK); + + rtn = nuContReadDataImpl(nuContData, 0); + if (rtn) { + return rtn; } + + if(nuContReadFunc != NULL) { + (*nuContReadFunc)(mesg->mesg); + } + + return rtn; }