[Libreoffice-commits] online.git: Branch 'distro/collabora/collabora-online-1-9' - loolwsd/LOOLWSD.cpp

Michael Meeks michael.meeks at collabora.com
Wed Nov 2 09:25:58 UTC 2016


 loolwsd/LOOLWSD.cpp |   12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

New commits:
commit 60b1623e53d04dff69e7001c3b3fea3817be3dd6
Author: Michael Meeks <michael.meeks at collabora.com>
Date:   Wed Nov 2 07:59:59 2016 +0000

    Disable port re-use for internal unit-tests, so we find a free socket.
    
    (cherry picked from commit a28b3d0d7e5f0cae2c78a6749c6600028088feeb)

diff --git a/loolwsd/LOOLWSD.cpp b/loolwsd/LOOLWSD.cpp
index 2a74663..4d32905 100644
--- a/loolwsd/LOOLWSD.cpp
+++ b/loolwsd/LOOLWSD.cpp
@@ -1313,14 +1313,14 @@ public:
 namespace
 {
 
-static inline ServerSocket* getServerSocket(int nClientPortNumber)
+static inline ServerSocket* getServerSocket(int nPortNumber, bool reuseDetails)
 {
     try
     {
         ServerSocket* socket = LOOLWSD::isSSLEnabled() ? new SecureServerSocket() : new ServerSocket();
         Poco::Net::IPAddress wildcardAddr;
-        SocketAddress address(wildcardAddr, nClientPortNumber);
-        socket->bind(address, true);
+        SocketAddress address(wildcardAddr, nPortNumber);
+        socket->bind(address, reuseDetails);
         // 64 is the default value for the backlog parameter in Poco
         // when creating a ServerSocket, so use it here, too.
         socket->listen(64);
@@ -1338,7 +1338,7 @@ static inline ServerSocket* findFreeServerPort(int& nClientPortNumber)
     ServerSocket* socket = nullptr;
     while (!socket)
     {
-        socket = getServerSocket(nClientPortNumber);
+        socket = getServerSocket(nClientPortNumber, false);
         if (!socket)
         {
             nClientPortNumber++;
@@ -1368,7 +1368,7 @@ ServerSocket* findFreeMasterPort(int &nMasterPortNumber)
     ServerSocket* socket = nullptr;
     while (!socket)
     {
-        socket = getServerSocket(nMasterPortNumber);
+        socket = getServerSocket(nMasterPortNumber, false);
         if (!socket)
         {
             nMasterPortNumber++;
@@ -1911,7 +1911,7 @@ int LOOLWSD::main(const std::vector<std::string>& /*args*/)
     std::unique_ptr<ServerSocket> psvs(
         UnitWSD::isUnitTesting() ?
             findFreeServerPort(ClientPortNumber) :
-            getServerSocket(ClientPortNumber));
+            getServerSocket(ClientPortNumber, true));
     if (!psvs)
         return Application::EXIT_SOFTWARE;
 


More information about the Libreoffice-commits mailing list