summaryrefslogtreecommitdiffstats
path: root/libjava/classpath/gnu/CORBA/CDR/cdrOutput.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/classpath/gnu/CORBA/CDR/cdrOutput.java')
-rw-r--r--libjava/classpath/gnu/CORBA/CDR/cdrOutput.java12
1 files changed, 11 insertions, 1 deletions
diff --git a/libjava/classpath/gnu/CORBA/CDR/cdrOutput.java b/libjava/classpath/gnu/CORBA/CDR/cdrOutput.java
index 86ca3b1cb3d..85f341c912d 100644
--- a/libjava/classpath/gnu/CORBA/CDR/cdrOutput.java
+++ b/libjava/classpath/gnu/CORBA/CDR/cdrOutput.java
@@ -41,6 +41,7 @@ package gnu.CORBA.CDR;
import gnu.CORBA.BigDecimalHelper;
import gnu.CORBA.GIOP.CharSets_OSF;
import gnu.CORBA.GIOP.cxCodeSet;
+import gnu.CORBA.Poa.gnuServantObject;
import gnu.CORBA.IOR;
import gnu.CORBA.Simple_delegate;
import gnu.CORBA.TypeCodeHelper;
@@ -99,7 +100,7 @@ public abstract class cdrOutput
/**
* The GIOP version.
*/
- protected Version giop = new Version(1, 0);
+ protected Version giop = new Version(1, 2);
/**
* The code set information.
@@ -327,6 +328,15 @@ public abstract class cdrOutput
IOR.write_null(this);
return;
}
+ else if (x instanceof gnuServantObject)
+ {
+ // The ORB may be different if several ORBs coexist
+ // in the same machine.
+ gnuServantObject g = (gnuServantObject) x;
+ IOR ior = g.orb.getLocalIor(x);
+ ior._write_no_endian(this);
+ return;
+ }
else if (x instanceof ObjectImpl)
{
Delegate d = ((ObjectImpl) x)._get_delegate();
OpenPOWER on IntegriCloud