From 38910ebb1b81498c7dfbd7904acf01a31052d17b Mon Sep 17 00:00:00 2001 From: Guilhem Lavaux Date: Fri, 26 Dec 2003 16:13:01 +0000 Subject: 2003-12-26 Guilhem Lavaux Mark Wielaard * gnu/java/rmi/server/UnicastConnectionManager.java (startScavenger): Set the client connection manager to daemon state because it may block clients until TIMEOUT is reached when they are exiting. * gnu/java/rmi/RMIVoidValue.java: New file for a class representing a void return. * gnu/java/rmi/server/UnicastRemoteCall.java (DummyOutputStream): Add a boolean before each written field to know whether it is a primitive. (releaseOutputStream): Flush parameters at write time. * gnu/java/rmi/server/UnicastServerRef.java (incomingMessageCall): Return a RMIVoidValue if no value is to be returned. * gnu/java/rmi/server/UnicastServer.java (incomingMessageCall): Do not write a returned object if it is a RMIVoidValue. Co-Authored-By: Mark Wielaard From-SVN: r75033 --- libjava/gnu/java/rmi/server/UnicastServerRef.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'libjava/gnu/java/rmi/server/UnicastServerRef.java') diff --git a/libjava/gnu/java/rmi/server/UnicastServerRef.java b/libjava/gnu/java/rmi/server/UnicastServerRef.java index e2f38ff..b004927 100644 --- a/libjava/gnu/java/rmi/server/UnicastServerRef.java +++ b/libjava/gnu/java/rmi/server/UnicastServerRef.java @@ -254,8 +254,11 @@ public Object incomingMessageCall(UnicastConnection conn, int method, long hash) throw new NoSuchMethodException(); } UnicastRemoteCall call = new UnicastRemoteCall(conn); - skel.dispatch(myself, call, method, hash); - return (call.returnValue()); + skel.dispatch(myself, call, method, hash); + if (!call.isReturnValue()) + return RMIVoidValue.INSTANCE; + else + return (call.returnValue()); } } -- cgit v1.1