Index: java/net/ServerSocket.java =================================================================== RCS file: /cvsroot/classpath/classpath/java/net/ServerSocket.java,v retrieving revision 1.36 diff -u -r1.36 ServerSocket.java --- java/net/ServerSocket.java 8 Apr 2004 16:26:04 -0000 1.36 +++ java/net/ServerSocket.java 21 Apr 2004 09:22:45 -0000 @@ -374,7 +374,8 @@ && ! ((PlainSocketImpl) getImpl()).isInChannelOperation()) throw new IllegalBlockingModeException(); - impl.accept(socket.getImpl()); + impl.accept(socket.impl); + socket.implCreated = true; } /** Index: java/net/Socket.java =================================================================== RCS file: /cvsroot/classpath/classpath/java/net/Socket.java,v retrieving revision 1.43 diff -u -r1.43 Socket.java --- java/net/Socket.java 8 Apr 2004 16:26:04 -0000 1.43 +++ java/net/Socket.java 21 Apr 2004 09:22:45 -0000 @@ -78,13 +78,15 @@ /** * The implementation object to which calls are redirected */ - private SocketImpl impl; + // package-private because ServerSocket.implAccept() needs to access it. + SocketImpl impl; /** * True if socket implementation was created by calling their * create() method. */ - private boolean implCreated; + // package-private because ServerSocket.implAccept() needs to access it. + boolean implCreated; /** * True if the socket is bound.