changeset 1050:05084f644c07 jdk8u65-b06

8076387: Better CORBA value handling Reviewed-by: rriggs, coffeys, skoivu, ahgross
author msheppar
date Tue, 14 Jul 2015 18:03:10 +0100
parents d185c856ef85
children fd1b5a75214c 168508f95488
files src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java src/share/classes/com/sun/corba/se/impl/io/IIOPOutputStream.java
diffstat 2 files changed, 7 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java	Tue Jul 14 16:49:41 2015 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java	Tue Jul 14 18:03:10 2015 +0100
@@ -1068,6 +1068,9 @@
 
             int spBase = spClass;       // current top of stack
 
+            if (currentClass.getName().equals("java.lang.String")) {
+                return this.readUTF();
+            }
             /* The object's classes should be processed from supertype to subtype
              * Push all the clases of the current object onto a stack.
              * Note that only the serializable classes are represented
--- a/src/share/classes/com/sun/corba/se/impl/io/IIOPOutputStream.java	Tue Jul 14 16:49:41 2015 +0100
+++ b/src/share/classes/com/sun/corba/se/impl/io/IIOPOutputStream.java	Tue Jul 14 18:03:10 2015 +0100
@@ -559,6 +559,10 @@
              * Push all the clases of the current object onto a stack.
              * Remember the stack pointer where this set of classes is being pushed.
              */
+            if (currentClassDesc.forClass().getName().equals("java.lang.String")) {
+                    this.writeUTF((String)obj);
+                    return;
+            }
             int stackMark = classDescStack.size();
             try {
                 ObjectStreamClass next;