X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin3_src%2Flibaxwin3.so_src%2Fmain.c;h=ab764d249fec52fd3e76526f5a04450c920b1430;hb=910b87da7338937ace686848fb915908df0bf09b;hp=453d4baa5fca76a88bbc303ed4ad70977f9f4e46;hpb=04a050f42807686dc119838c82372409246d55bb;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin3_src/libaxwin3.so_src/main.c b/Usermode/Applications/axwin3_src/libaxwin3.so_src/main.c index 453d4baa..ab764d24 100644 --- a/Usermode/Applications/axwin3_src/libaxwin3.so_src/main.c +++ b/Usermode/Applications/axwin3_src/libaxwin3.so_src/main.c @@ -10,20 +10,25 @@ #include "include/ipc.h" #include +// === GLOBALS === +int giAxWin3_MainLoopExit; + // === CODE === int SoMain(void *Base, int argc, const char *argv[], const char **envp) { // TODO: Parse the environment for the AXWIN3_SERVER variable - gsAxWin3_int_ServerDesc = getenv("AXWIN3_SERVER"); + //gsAxWin3_int_ServerDesc = getenv("AXWIN3_SERVER"); + gsAxWin3_int_ServerDesc = "pipe:/Devices/ipcpipe/axwin"; return 0; } -void AxWin3_MainLoop(void) +int AxWin3_MainLoop(void) { tAxWin_IPCMessage *msg; - int bExit = 0; - while(!bExit) + giAxWin3_MainLoopExit = 0; + + while(!giAxWin3_MainLoopExit) { msg = AxWin3_int_GetIPCMessage(0, NULL); if(!msg) continue; @@ -33,6 +38,12 @@ void AxWin3_MainLoop(void) AxWin3_int_HandleMessage( msg ); } + return giAxWin3_MainLoopExit; +} + +void AxWin3_StopMainLoop(int Reason) +{ + giAxWin3_MainLoopExit = Reason; } void AxWin3_MessageSelect(int nFD, fd_set *FDs)