(file) Return to Monitor.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

Diff for /pegasus/src/Pegasus/Common/Monitor.cpp between version 1.12 and 1.13

version 1.12, 2002/05/23 20:11:56 version 1.13, 2002/05/28 20:05:35
Line 168 
Line 168 
  
     int count = 0;     int count = 0;
  
     if (count == 0)  
     {  
         memcpy(&_rep->active_rd_fd_set, &_rep->rd_fd_set, sizeof(fd_set));         memcpy(&_rep->active_rd_fd_set, &_rep->rd_fd_set, sizeof(fd_set));
         memcpy(&_rep->active_wr_fd_set, &_rep->wr_fd_set, sizeof(fd_set));         memcpy(&_rep->active_wr_fd_set, &_rep->wr_fd_set, sizeof(fd_set));
         memcpy(&_rep->active_ex_fd_set, &_rep->ex_fd_set, sizeof(fd_set));         memcpy(&_rep->active_ex_fd_set, &_rep->ex_fd_set, sizeof(fd_set));
Line 184 
Line 183 
             &_rep->active_wr_fd_set,             &_rep->active_wr_fd_set,
             &_rep->active_ex_fd_set,             &_rep->active_ex_fd_set,
             &tv);             &tv);
   
         if (count == 0)         if (count == 0)
         {         {
            pegasus_sleep(milliseconds);            pegasus_sleep(milliseconds);
Line 198 
Line 196 
         else if (count == -1)         else if (count == -1)
 #endif #endif
         {         {
             count = 0;  
             pegasus_sleep(milliseconds);             pegasus_sleep(milliseconds);
   
             return false;             return false;
         }         }
     }  
  
     for (Uint32 i = 0, n = _entries.size(); i < n; i++)      Boolean handled_events = false;
       for (Uint32 i = 0, n = _entries.size(); i < _entries.size(); i++)
     {     {
         Sint32 socket = _entries[i].socket;         Sint32 socket = _entries[i].socket;
         Uint32 events = 0;         Uint32 events = 0;
Line 228 
Line 224 
                  o.enqueue(message);                  o.enqueue(message);
                  i--;                  i--;
                  n = _entries.size();                  n = _entries.size();
                  continue;  
               }               }
            }            }
         }         }
Line 273 
Line 268 
  
             if(_entries[i]._type == Monitor::CONNECTION)             if(_entries[i]._type == Monitor::CONNECTION)
             {             {
                if( 0 == static_cast<HTTPConnection *>(queue)->refcount.value())                 if( static_cast<HTTPConnection *>(queue)->refcount.value() == 0 )
                {                {
                   static_cast<HTTPConnection *>(queue)->refcount++;                   static_cast<HTTPConnection *>(queue)->refcount++;
                   if( false == static_cast<HTTPConnection *>(queue)->is_dying())                   if( false == static_cast<HTTPConnection *>(queue)->is_dying())
Line 288 
Line 283 
                queue->enqueue(message);                queue->enqueue(message);
             }             }
             count--;             count--;
             return true;  
         }         }
           handled_events = true;
     }     }
     pegasus_sleep(milliseconds);      return(handled_events);
   
     return false;  
 } }
  
 Boolean Monitor::solicitSocketMessages( Boolean Monitor::solicitSocketMessages(


Legend:
Removed from v.1.12  
changed lines
  Added in v.1.13

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2