diff options
author | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-05-02 09:27:59 +0000 |
---|---|---|
committer | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-05-02 09:27:59 +0000 |
commit | 3f17e0689e06ffab85f41e5f9e9318f5cce51fe6 (patch) | |
tree | d395dadb3026a885728844a608ac376f88c1f984 /libjava/java/net/ServerSocket.java | |
parent | 5ac7b165098f351a3a8f45710a27a950098c442e (diff) | |
download | gcc-3f17e0689e06ffab85f41e5f9e9318f5cce51fe6.tar.gz |
2003-05-02 Michael Koch <konqueror@gmx.de>
* java/net/InetAddress.java:
Merged class documentation with classpath.
* java/net/JarURLConnection.java:
Explicitely import all used classes.
* java/net/URL.java:
Reformatting.
* java/net/ServerSocket.java,
java/net/Socket.java:
New versions from classpath.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@66376 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/net/ServerSocket.java')
-rw-r--r-- | libjava/java/net/ServerSocket.java | 45 |
1 files changed, 43 insertions, 2 deletions
diff --git a/libjava/java/net/ServerSocket.java b/libjava/java/net/ServerSocket.java index 0285c128c77..2d04eac452f 100644 --- a/libjava/java/net/ServerSocket.java +++ b/libjava/java/net/ServerSocket.java @@ -164,9 +164,50 @@ public class ServerSocket if (bindAddr == null) bindAddr = InetAddress.ANY_IF; + // create socket impl.create(true); - impl.bind(bindAddr, port); - impl.listen(backlog); + + // bind to address/port + try + { + impl.bind(bindAddr, port); + } + catch (IOException exception) + { + impl.close(); + throw exception; + } + catch (RuntimeException exception) + { + impl.close(); + throw exception; + } + catch (Error error) + { + impl.close(); + throw error; + } + + // listen on socket + try + { + impl.listen(backlog); + } + catch (IOException exception) + { + impl.close(); + throw exception; + } + catch (RuntimeException exception) + { + impl.close(); + throw exception; + } + catch (Error error) + { + impl.close(); + throw error; + } } /** |