Changeset 71:6426d93defd0 in roaraudio for roard/clients.c


Ignore:
Timestamp:
07/12/08 15:07:26 (16 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

added support to quit the server if all clients are gone and we are in --no-listen mode

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roard/clients.c

    r66 r71  
    115115 int fh; 
    116116 int max_fh = -1; 
     117 int have = 0; 
    117118 
    118119 FD_ZERO(&r); 
     
    127128 
    128129  if ( (fh = g_clients[i]->fh) != -1 ) { 
     130   have++; 
     131 
    129132   FD_SET(fh, &r); 
    130133   FD_SET(fh, &e); 
     
    147150 
    148151 if ( (ret = select(max_fh + 1, &r, NULL, &e, &tv)) < 1 ) { 
    149   return ret; 
     152  return ret < 0 ? ret : have; 
    150153 } 
    151154 
     
    155158 
    156159  if ( (fh = g_clients[i]->fh) != -1 ) { 
    157  
    158160   if ( FD_ISSET(fh, &r) ) { 
    159161    if ( g_clients[i]->execed == -1 ) { 
     
    177179 } 
    178180 
    179  return 0; 
     181 ROAR_DBG("clients_check_all(void) = %i // have value", have); 
     182 return have; 
    180183} 
    181184 
Note: See TracChangeset for help on using the changeset viewer.