[BACK]Return to tcpf.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / io

Diff for /OpenXM_contrib2/asir2000/io/tcpf.c between version 1.59 and 1.60

version 1.59, 2010/12/12 03:20:53 version 1.60, 2011/01/18 09:09:22
Line 44 
Line 44 
  * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY   * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  * $OpenXM: OpenXM_contrib2/asir2000/io/tcpf.c,v 1.58 2010/09/01 08:01:09 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/io/tcpf.c,v 1.59 2010/12/12 03:20:53 ohara Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "parse.h"  #include "parse.h"
Line 1070  int get_mcindex(int i)
Line 1070  int get_mcindex(int i)
   
 void Pox_select(NODE arg,LIST *rp)  void Pox_select(NODE arg,LIST *rp)
 {  {
         int fd,n,i,index,mcind,s;          int fd,n,i,index,mcind,s,maxfd,minfd;
         fd_set r,w,e;          fd_set r,w,e;
         NODE list,t,t1,t0;          NODE list,t,t1,t0;
         Q q;          Q q;
Line 1088  void Pox_select(NODE arg,LIST *rp)
Line 1088  void Pox_select(NODE arg,LIST *rp)
                 tvp = 0;                  tvp = 0;
   
         FD_ZERO(&r); FD_ZERO(&w); FD_ZERO(&e);          FD_ZERO(&r); FD_ZERO(&w); FD_ZERO(&e);
           maxfd = minfd = -1;
         for ( t = list, t0 = 0; t; t = NEXT(t) ) {          for ( t = list, t0 = 0; t; t = NEXT(t) ) {
                 index = QTOS((Q)BDY(t));                  index = QTOS((Q)BDY(t));
                 valid_mctab_index(index);                  valid_mctab_index(index);
Line 1096  void Pox_select(NODE arg,LIST *rp)
Line 1097  void Pox_select(NODE arg,LIST *rp)
                         MKNODE(t1,(Q)BDY(t),t0); t0 = t1;                          MKNODE(t1,(Q)BDY(t),t0); t0 = t1;
                 } else {                  } else {
                         fd = get_fd(s); FD_SET((unsigned int)fd,&r);                          fd = get_fd(s); FD_SET((unsigned int)fd,&r);
                           maxfd = maxfd<0 ? fd : MAX(fd,maxfd);
                           minfd = minfd<0 ? fd : MIN(fd,minfd);
                 }                  }
         }          }
         if ( t0 ) {          if ( t0 ) {
Line 1103  void Pox_select(NODE arg,LIST *rp)
Line 1106  void Pox_select(NODE arg,LIST *rp)
         }          }
   
         n = select(FD_SETSIZE,&r,&w,&e,tvp);          n = select(FD_SETSIZE,&r,&w,&e,tvp);
   #if defined(VISUAL)
           for ( i = minfd, t = 0; n && i <= maxfd; i++ )
   #else
         for ( i = 0, t = 0; n && i < FD_SETSIZE; i++ )          for ( i = 0, t = 0; n && i < FD_SETSIZE; i++ )
   #endif
                 if ( FD_ISSET(i,&r) ) {                  if ( FD_ISSET(i,&r) ) {
                         /* index : index to iofp array */                          /* index : index to iofp array */
                         index = get_index(i);                          index = get_index(i);

Legend:
Removed from v.1.59  
changed lines
  Added in v.1.60

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>