From 16072af808e7a55a0ba1ad5efc36c747c04456e3 Mon Sep 17 00:00:00 2001 From: ultramage Date: Wed, 21 Feb 2007 13:09:22 +0000 Subject: Minor stuff (typos, socket.c, junk in login reply packet) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9886 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/common/socket.c | 29 ++++++++--------------------- 1 file changed, 8 insertions(+), 21 deletions(-) (limited to 'src/common/socket.c') diff --git a/src/common/socket.c b/src/common/socket.c index 43422da85..fda81521d 100644 --- a/src/common/socket.c +++ b/src/common/socket.c @@ -589,42 +589,29 @@ int do_sendrecv(int next) if(session[rfd.fd_array[i]]) session[rfd.fd_array[i]]->func_recv(rfd.fd_array[i]); } - +#else + // otherwise assume that the fd_set is a bit-array and enumerate it in a standard way + //TODO: select() returns the number of readable sockets; use that to exit the fd_max loop faster for (i = 1; i < fd_max; i++) { - if(!session[i]) - continue; - - if(session[i]->wdata_size) - session[i]->func_send(i); - - if(session[i]->eof) //func_send can't free a session, this is safe. - { //Finally, even if there is no data to parse, connections signalled eof should be closed, so we call parse_func [Skotlex] - session[i]->func_parse(i); //This should close the session inmediately. - } + if(FD_ISSET(i,&rfd) && session[i]) + session[i]->func_recv(i); } +#endif -#else - // otherwise assume that the fd_set is a bit-array and enumerate it in a standard way for (i = 1; i < fd_max; i++) { if(!session[i]) continue; - if(FD_ISSET(i,&rfd)){ - //ShowMessage("read:%d\n",i); - session[i]->func_recv(i); - } - if(session[i]->wdata_size) session[i]->func_send(i); - - if(session[i]->eof) + + if(session[i]->eof) //func_send can't free a session, this is safe. { //Finally, even if there is no data to parse, connections signalled eof should be closed, so we call parse_func [Skotlex] session[i]->func_parse(i); //This should close the session inmediately. } } -#endif return 0; } -- cgit v1.2.3-60-g2f50