Kurchi,

Please have an additional reviewer for the networking portion of this, but in doing a quick look, I believe the point of the two catches is to make sure that any IOException that isn't already a SocketException (SocketException is a subclass of IOException) is rebranded to SocketException.

If these internal methods are guaranteed to only throw SocketExeptions (and it looks like it), then you can simplify this code to:

    public DatagramSocket() throws SocketException {
         createImpl();
         bind(new InetSocketAddress(0));
    }

bind throws SocketException, InetSocketAddress(int) only throws a IAE (a RuntimeException).

Brad




On 7/21/2011 3:05 PM, Kurchi Hazra wrote:
Hi,

Due to a recent update in javac to issue a warning on detecting
unreachable code, the following warning started showing up in the jdk
networking code:
../../../src/share/classes/java/net/DatagramSocket.java:183: warning:
unreachable catch clause.

This fix aims at removing this warning by removing the IOException. On
inspection, it was found that currently, the native code does not throw
any IOException.

The fix involves updates in:
jdk/src/share/classes/java/net/DatagramSocket.java


Webrev: http://cr.openjdk.java.net/~chegar/7035556/webrev.00/

Thanks,
-Kurchi

Reply via email to