Browse Source

FD_ZERO/SET must be done everytime before select().

git-svn-id: svn://bind10.isc.org/svn/bind10/branches/f2f200910@264 e5f2f494-b856-4b98-b285-d166d9295462
JINMEI Tatuya 15 years ago
parent
commit
858bd245a9
1 changed files with 4 additions and 4 deletions
  1. 4 4
      src/bin/parkinglot/main.cc

+ 4 - 4
src/bin/parkinglot/main.cc

@@ -79,12 +79,12 @@ main(int argc, char* argv[]) {
     int ss = session.getSocket();
     int nfds = max(ps, ss) + 1;
 
-    FD_ZERO(&fds);
-    FD_SET(ps, &fds);
-    FD_SET(ss, &fds);
-
     cout << "server running" << endl;
     while (true) {
+        FD_ZERO(&fds);
+        FD_SET(ps, &fds);
+        FD_SET(ss, &fds);
+
         int n = select(nfds, &fds, NULL, NULL, NULL);
         if (n < 0)
             throw FatalError("select error");