Made IRC use select()
[tpg/acess2.git] / Usermode / Applications / irc_src / main.c
index b4892e7..c7535fa 100644 (file)
@@ -61,7 +61,26 @@ int main(int argc, const char *argv[], const char *envp[])
        \r
        for( ;; )\r
        {\r
-               ProcessIncoming(&srv);\r
+               fd_set  readfds;\r
+                int    rv;\r
+               \r
+               FD_ZERO(&readfds);\r
+               FD_SET(0, &readfds);    // stdin\r
+               FD_SET(srv.FD, &readfds);\r
+               \r
+               rv = select(srv.FD, &readfds, 0, 0, NULL);\r
+               if( rv == -1 )  break;\r
+               \r
+               if(FD_ISSET(0, &readfds))\r
+               {\r
+                       // User input\r
+               }\r
+               \r
+               // Server response\r
+               if(FD_ISSET(srv.FD, &readfds))\r
+               {\r
+                       ProcessIncoming(&srv);\r
+               }\r
        }\r
        \r
        close(srv.FD);\r

UCC git Repository :: git.ucc.asn.au