summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--osframework/source/SexyAppFramework/SexyServiceManager.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/osframework/source/SexyAppFramework/SexyServiceManager.cpp b/osframework/source/SexyAppFramework/SexyServiceManager.cpp
index 4be057a..19e847b 100644
--- a/osframework/source/SexyAppFramework/SexyServiceManager.cpp
+++ b/osframework/source/SexyAppFramework/SexyServiceManager.cpp
@@ -308,13 +308,18 @@ bool ServiceManager::initialize()
return true;
- mSock = new UDPSocket("", 11053);
- if (mSock->hasError())
+ for (int i = 0; i < 10; i++)
{
+ mSock = new UDPSocket();
+ if (!mSock->hasError() &&
+ mSock->setLocalAddressAndPort("", 11053 + i))
+ break;
+
delete mSock;
mSock = 0;
- return false;
}
+ if (!mSock)
+ return false;
mSock->joinGroup("224.0.0.251");
mDone = false;