summaryrefslogtreecommitdiff
path: root/gnu/CORBA/gnuRequest.java
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/CORBA/gnuRequest.java')
-rw-r--r--gnu/CORBA/gnuRequest.java15
1 files changed, 7 insertions, 8 deletions
diff --git a/gnu/CORBA/gnuRequest.java b/gnu/CORBA/gnuRequest.java
index 0665e919b..5f674aa2e 100644
--- a/gnu/CORBA/gnuRequest.java
+++ b/gnu/CORBA/gnuRequest.java
@@ -69,6 +69,7 @@ import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
+import org.omg.CORBA.UnknownUserException;
/**
* The implementation of the CORBA request.
@@ -786,17 +787,15 @@ public class gnuRequest
input.align(8);
align = false;
}
- input.mark(2000);
- String uxId = input.read_string();
- input.reset();
+ // Prepare an Any that will hold the exception.
+ gnuAny exc = new gnuAny();
- UserException uex = ObjectCreator.readUserException(uxId, input);
+ exc.insert_Streamable(new streamReadyHolder(input));
+
+ UnknownUserException unuex = new UnknownUserException(exc);
+ m_environment.exception(unuex);
- if (uex == null)
- m_environment.exception(new UserException(uxId));
- else
- m_environment.exception(uex);
break;
case ReplyHeader.LOCATION_FORWARD_PERM :