summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/TcpAcceptor.java
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2008-03-10 20:37:20 +0100
committerBenoit Foucher <benoit@zeroc.com>2008-03-10 20:37:20 +0100
commitf01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c (patch)
tree58a8e381c3266facc8e707b13cd0aa29757757cb /java/src/IceInternal/TcpAcceptor.java
parentMerge branch 'master' of ssh://git/home/git/ice (diff)
downloadice-f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c.tar.bz2
ice-f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c.tar.xz
ice-f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c.zip
Fix for bug 2721
Diffstat (limited to 'java/src/IceInternal/TcpAcceptor.java')
-rw-r--r--java/src/IceInternal/TcpAcceptor.java33
1 files changed, 1 insertions, 32 deletions
diff --git a/java/src/IceInternal/TcpAcceptor.java b/java/src/IceInternal/TcpAcceptor.java
index 87e1f619adf..e09bf7c760d 100644
--- a/java/src/IceInternal/TcpAcceptor.java
+++ b/java/src/IceInternal/TcpAcceptor.java
@@ -46,40 +46,9 @@ class TcpAcceptor implements Acceptor
public Transceiver
accept()
{
- java.nio.channels.SocketChannel fd = null;
- while(true)
- {
- try
- {
- fd = _fd.accept();
- break;
- }
- catch(java.io.IOException ex)
- {
- if(Network.interrupted(ex))
- {
- continue;
- }
- Ice.SocketException se = new Ice.SocketException();
- se.initCause(ex);
- throw se;
- }
- }
-
+ java.nio.channels.SocketChannel fd = Network.doAccept(_fd);
Network.setBlock(fd, false);
Network.setTcpBufSize(fd, _instance.initializationData().properties, _logger);
- try
- {
- java.net.Socket socket = fd.socket();
- socket.setTcpNoDelay(true);
- socket.setKeepAlive(true);
- }
- catch(java.io.IOException ex)
- {
- Ice.SocketException se = new Ice.SocketException();
- se.initCause(ex);
- throw se;
- }
if(_traceLevels.network >= 1)
{