Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/config/modulesets/patches/libjingle_ignore_invalid_sockets.patch
blob: 30af0a521963ef910a215af5dc0c07675fff9342 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
diff -rN -up old-libjingle/talk/base/physicalsocketserver.cc new-libjingle/talk/base/physicalsocketserver.cc
--- old-libjingle/talk/base/physicalsocketserver.cc     2007-05-01 17:02:49.000000000 +0100
+++ new-libjingle/talk/base/physicalsocketserver.cc     2007-05-01 17:02:49.000000000 +0100
@@ -885,6 +885,8 @@ bool PhysicalSocketServer::Wait(int cmsW
         if (!process_io && (pdispatcher != signal_wakeup_))
           continue;
         int fd = pdispatcher->GetDescriptor();
+        if (fd == INVALID_SOCKET)
+          continue;
         if (fd > fdmax)
           fdmax = fd;
         uint32 ff = pdispatcher->GetRequestedEvents();
@@ -919,6 +921,8 @@ bool PhysicalSocketServer::Wait(int cmsW
       for (unsigned i = 0; i < dispatchers_.size(); i++) {
         Dispatcher *pdispatcher = dispatchers_[i];
         int fd = pdispatcher->GetDescriptor();
+        if (fd == INVALID_SOCKET)
+          continue;
         uint32 ff = 0;
         if (FD_ISSET(fd, &fdsRead)) {
           FD_CLR(fd, &fdsRead);