From de205e06bae4a2e9c4c186aa81c481dca4a71425 Mon Sep 17 00:00:00 2001 From: Ito Kazumitsu Date: Sun, 21 Mar 2004 11:00:48 +0000 Subject: [PATCH] 2004-03-21 Ito Kazumitsu * java/net/ServerSocket.java (accept): Close the socket when error occured. From-SVN: r79774 --- libjava/ChangeLog | 5 +++++ libjava/java/net/ServerSocket.java | 19 ++++++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index e9730a02a26..ff1aa8d0d31 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,8 @@ +2004-03-21 Ito Kazumitsu + + * java/net/ServerSocket.java + (accept): Close the socket when error occured. + 2004-03-21 Jeroen Frijters * java/net/URI.java (parseURI): Added unquoting. diff --git a/libjava/java/net/ServerSocket.java b/libjava/java/net/ServerSocket.java index df338091291..be3f8008d86 100644 --- a/libjava/java/net/ServerSocket.java +++ b/libjava/java/net/ServerSocket.java @@ -323,7 +323,24 @@ public class ServerSocket sm.checkListen (impl.getLocalPort ()); Socket socket = new Socket(); - implAccept (socket); + + try + { + implAccept(socket); + } + catch (IOException e) + { + try + { + socket.close(); + } + catch (IOException e2) + { + } + + throw e; + } + return socket; }