Author: hgomez Date: Thu Nov 17 23:16:53 2005 New Revision: 345466 URL: http://svn.apache.org/viewcvs?rev=345466&view=rev Log: Close the client socket if something goes wrong during process
Modified: webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/WebServer.java Modified: webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/WebServer.java URL: http://svn.apache.org/viewcvs/webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/WebServer.java?rev=345466&r1=345465&r2=345466&view=diff ============================================================================== --- webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/WebServer.java (original) +++ webservices/xmlrpc/branches/XMLRPC_2_0_BRANCH/src/java/org/apache/xmlrpc/WebServer.java Thu Nov 17 23:16:53 2005 @@ -445,9 +445,12 @@ { while (listener != null) { + Socket socket = null; + Runner runner = null; + try { - Socket socket = serverSocket.accept(); + socket = serverSocket.accept(); try { socket.setTcpNoDelay(true); @@ -459,7 +462,7 @@ if (allowConnection(socket)) { - Runner runner = getRunner(); + runner = getRunner(); runner.handle(socket); } else @@ -487,6 +490,19 @@ + err + ")."); err.printStackTrace(); } + finally + { + if (runner == null && socket != null) + { + try + { + socket.close(); + } + catch (Throwable e) + { + } + } + } } } catch (Exception exception)