Index: C:/harmony/trunk_0427/modules/luni/src/main/java/java/net/DatagramSocket.java =================================================================== --- C:/harmony/trunk_0427/modules/luni/src/main/java/java/net/DatagramSocket.java (revision 422613) +++ C:/harmony/trunk_0427/modules/luni/src/main/java/java/net/DatagramSocket.java (working copy) @@ -504,6 +504,9 @@ * the DatagramSocketImpl to use */ protected DatagramSocket(DatagramSocketImpl socketImpl) { + if (socketImpl == null) { + throw new NullPointerException(); + } impl = socketImpl; } Index: C:/harmony/trunk_0427/modules/luni/src/test/java/tests/api/java/net/DatagramSocketTest.java =================================================================== --- C:/harmony/trunk_0427/modules/luni/src/test/java/tests/api/java/net/DatagramSocketTest.java (revision 422613) +++ C:/harmony/trunk_0427/modules/luni/src/test/java/tests/api/java/net/DatagramSocketTest.java (working copy) @@ -20,6 +20,7 @@ import java.net.BindException; import java.net.DatagramPacket; import java.net.DatagramSocket; +import java.net.DatagramSocketImpl; import java.net.Inet4Address; import java.net.Inet6Address; import java.net.InetAddress; @@ -969,6 +970,23 @@ handleException(e, SO_TIMEOUT); } } + /** + * @tests java.net.DatagramSocket#DatagramSocket(java.net.DatagramSocketImpl) + */ + public void test_ConstructorLjava_net_DatagramSocketImpl() { + class testDatagramSocket extends DatagramSocket { + public testDatagramSocket(DatagramSocketImpl impl){ + super(impl); + } + } + + try { + new testDatagramSocket((DatagramSocketImpl) null); + fail("exception expected"); + } catch (NullPointerException ex) { + //expected + } + } /** * @tests java.net.DatagramSocket#DatagramSocket(java.net.SocketAddress)