diff options
| author | Adam Ierymenko <adam.ierymenko@gmail.com> | 2013-08-09 17:20:40 -0400 |
|---|---|---|
| committer | Adam Ierymenko <adam.ierymenko@gmail.com> | 2013-08-09 17:20:40 -0400 |
| commit | 95a23dc7ec9a2ce55cab337b78b662a30ec2b986 (patch) | |
| tree | 215b13db489ecc9cf9d406f922477cab6ed42aa5 /node/EthernetTap.cpp | |
| parent | 7c3a446499d799efe6ff7c299e9a5e2c7c217893 (diff) | |
| download | infinitytier-95a23dc7ec9a2ce55cab337b78b662a30ec2b986.tar.gz infinitytier-95a23dc7ec9a2ce55cab337b78b662a30ec2b986.zip | |
Fix for another wonderful C++ threading race condition.
Diffstat (limited to 'node/EthernetTap.cpp')
| -rw-r--r-- | node/EthernetTap.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/node/EthernetTap.cpp b/node/EthernetTap.cpp index 4c300d0b..e6536223 100644 --- a/node/EthernetTap.cpp +++ b/node/EthernetTap.cpp @@ -557,6 +557,10 @@ void EthernetTap::threadMain() char getBuf[4096 + 14]; Buffer<4096> data; + // Wait for a moment after startup -- wait for Network to finish + // constructing itself. + Thread::sleep(500); + FD_ZERO(&readfds); FD_ZERO(&nullfds); int nfds = (int)std::max(_shutdownSignalPipe[0],_fd) + 1; |
