Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sjhbuild/modulesets/patches/libjingle_ignore_invalid_sockets.patch
diff options
context:
space:
mode:
Diffstat (limited to 'sjhbuild/modulesets/patches/libjingle_ignore_invalid_sockets.patch')
-rw-r--r--sjhbuild/modulesets/patches/libjingle_ignore_invalid_sockets.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/sjhbuild/modulesets/patches/libjingle_ignore_invalid_sockets.patch b/sjhbuild/modulesets/patches/libjingle_ignore_invalid_sockets.patch
new file mode 100644
index 0000000..30af0a5
--- /dev/null
+++ b/sjhbuild/modulesets/patches/libjingle_ignore_invalid_sockets.patch
@@ -0,0 +1,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);