diff --git a/src/events/eventserver.cpp b/src/events/eventserver.cpp
index d30d81a4b222d1f237ef3df700611d13eefb8de7..fbd69b19e77ececb78f199efc9172f62688d3e1e 100644
--- a/src/events/eventserver.cpp
+++ b/src/events/eventserver.cpp
@@ -202,7 +202,7 @@ int CEventServer::wait_first(std::list<std::string> events,int timeout)
   bool end=false;
   timeval time;
 
-  if(timeout>0)
+  if(timeout>=0)
   {
     time_out.set(timeout);
     time=time_out.getTimeInTimeval();
@@ -231,7 +231,7 @@ int CEventServer::wait_first(std::list<std::string> events,int timeout)
     }
   
     this->access_events.exit();
-    if(timeout>0)
+    if(timeout>=0)
       error=select(max_fd+1,&wait_set,NULL,NULL,&time);
     else
       error=select(max_fd+1,&wait_set,NULL,NULL,NULL);
@@ -291,7 +291,7 @@ void CEventServer::wait_all(std::list<std::string> events,int timeout)
   CTime time_out;
   timeval time;
 
-  if(timeout>0)
+  if(timeout>=0)
   {
     time_out.set(timeout);
     time=time_out.getTimeInTimeval();
@@ -320,7 +320,7 @@ void CEventServer::wait_all(std::list<std::string> events,int timeout)
       }  
     }
     this->access_events.exit();
-    if(timeout>0)
+    if(timeout>=0)
       error=select(max_fd+1,&wait_set,NULL,NULL,&time);
     else
       error=select(max_fd+1,&wait_set,NULL,NULL,NULL);
@@ -360,7 +360,7 @@ void CEventServer::wait_all(std::list<std::string> events,int timeout)
                 end=true;
               else
               {
-                if(timeout>0)
+                if(timeout>=0)
                   time=time_out.getTimeInTimeval();
               }
             }