diff options
Diffstat (limited to 'libjava')
-rw-r--r-- | libjava/ChangeLog | 5 | ||||
-rw-r--r-- | libjava/java/net/DatagramSocket.java | 25 |
2 files changed, 26 insertions, 4 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 388dd00..845bfbe 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,5 +1,10 @@ 2003-06-11 Michael Koch <konqueror@gmx.de> + * java/net/DatagramSocket.java: + Partly merged with classpath. + +2003-06-11 Michael Koch <konqueror@gmx.de> + * java/awt/Frame.java, java/awt/Graphics.java, java/awt/Menu.java, diff --git a/libjava/java/net/DatagramSocket.java b/libjava/java/net/DatagramSocket.java index e21ea44..57f3da7 100644 --- a/libjava/java/net/DatagramSocket.java +++ b/libjava/java/net/DatagramSocket.java @@ -174,11 +174,28 @@ public class DatagramSocket } impl.create(); - - impl.bind(port, laddr == null ? InetAddress.ANY_IF : laddr); + if (laddr == null) + laddr = InetAddress.ANY_IF; - remoteAddress = null; - remotePort = -1; + try + { + impl.bind (port, laddr); + } + catch (SocketException exception) + { + impl.close (); + throw exception; + } + catch (RuntimeException exception) + { + impl.close (); + throw exception; + } + catch (Error error) + { + impl.close (); + throw error; + } } /** |