[Libreoffice-commits] core.git: Branch 'libreoffice-5-0' - jurt/com

Noel Grandin noel at peralex.com
Tue Aug 18 08:09:45 PDT 2015


 jurt/com/sun/star/lib/connections/socket/socketAcceptor.java  |    5 ++++-
 jurt/com/sun/star/lib/connections/socket/socketConnector.java |    4 +++-
 2 files changed, 7 insertions(+), 2 deletions(-)

New commits:
commit fe56dfd8261f311f78c375a54a09adb81489c854
Author: Noel Grandin <noel at peralex.com>
Date:   Thu Jul 30 15:38:41 2015 +0200

    tdf#93410 - NPE while connecting to LibreOffice via Java UNO API
    
    The below commit fixes this as bug as a side-effect:
    
    fix use of TCP_NODELAY for localhost URP connections
    
    we implemented this logic in the C++ URP code a while back, but the Java
    code was not correctly updated.
    
    Reviewed-on: https://gerrit.libreoffice.org/17427
    Reviewed-by: Noel Grandin <noelgrandin at gmail.com>
    Tested-by: Noel Grandin <noelgrandin at gmail.com>
    (cherry picked from commit 9ffdcc76858bc01150727345de4dfd0ef40ed8c0)
    
    Change-Id: I377d7150f1adb69d6f86d9b4f3406163aaf85aea
    Reviewed-on: https://gerrit.libreoffice.org/17708
    Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>
    Tested-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>

diff --git a/jurt/com/sun/star/lib/connections/socket/socketAcceptor.java b/jurt/com/sun/star/lib/connections/socket/socketAcceptor.java
index 022f891..da33625 100644
--- a/jurt/com/sun/star/lib/connections/socket/socketAcceptor.java
+++ b/jurt/com/sun/star/lib/connections/socket/socketAcceptor.java
@@ -152,9 +152,12 @@ public final class socketAcceptor implements XAcceptor {
             }
             // we enable tcpNoDelay for loopback connections because
             // it can make a significant speed difference on linux boxes.
-            if (tcpNoDelay != null || ((InetSocketAddress)socket.getRemoteSocketAddress()).getAddress().isLoopbackAddress()) {
+            if (tcpNoDelay != null) {
                 socket.setTcpNoDelay(tcpNoDelay.booleanValue());
             }
+            else if (((InetSocketAddress)socket.getRemoteSocketAddress()).getAddress().isLoopbackAddress()) {
+                socket.setTcpNoDelay(true);
+            }
             return new SocketConnection(acceptingDescription, socket);
         }
         catch(IOException e) {
diff --git a/jurt/com/sun/star/lib/connections/socket/socketConnector.java b/jurt/com/sun/star/lib/connections/socket/socketConnector.java
index fc44639..c169b59 100644
--- a/jurt/com/sun/star/lib/connections/socket/socketConnector.java
+++ b/jurt/com/sun/star/lib/connections/socket/socketConnector.java
@@ -146,8 +146,10 @@ public final class socketConnector implements XConnector {
         try {
             // we enable tcpNoDelay for loopback connections because
             // it can make a significant speed difference on linux boxes.
-            if (desc.getTcpNoDelay() != null || isLoopbackAddress)
+            if (desc.getTcpNoDelay() != null)
                 socket.setTcpNoDelay(desc.getTcpNoDelay().booleanValue());
+            else if (isLoopbackAddress)
+                socket.setTcpNoDelay(true);
 
             con = new SocketConnection(connectionDescription, socket);
         } catch (IOException e) {


More information about the Libreoffice-commits mailing list