You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yoko-commits@incubator.apache.org by dm...@apache.org on 2007/02/12 14:11:06 UTC

svn commit: r506452 - /incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/types/CorbaPrimitiveHandler.java

Author: dmiddlem
Date: Mon Feb 12 06:11:05 2007
New Revision: 506452

URL: http://svn.apache.org/viewvc?view=rev&rev=506452
Log:
Fixing conversion issues between bytes and characters. (YOKO-290)

Modified:
    incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/types/CorbaPrimitiveHandler.java

Modified: incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/types/CorbaPrimitiveHandler.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/types/CorbaPrimitiveHandler.java?view=diff&rev=506452&r1=506451&r2=506452
==============================================================================
--- incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/types/CorbaPrimitiveHandler.java (original)
+++ incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/types/CorbaPrimitiveHandler.java Mon Feb 12 06:11:05 2007
@@ -50,7 +50,8 @@
             break;
         case TCKind._tk_char:
             char charValue = ((Character)value).charValue();
-            data = Byte.toString((byte) charValue);
+            // value + (-128)
+            data = Byte.toString((byte)(charValue + Byte.MIN_VALUE));
             break;
         case TCKind._tk_wchar:
             data = ((Character)value).toString();
@@ -100,7 +101,8 @@
         case TCKind._tk_char:
             // A char is mapped to a byte, we need it as a character
             Byte byteValue = new Byte(data);
-            value = new Character((char) byteValue.byteValue());
+            // value - (-128)
+            value = new Character((char)(byteValue.byteValue() - Byte.MIN_VALUE));
             break;
         case TCKind._tk_wchar:
             // A wide char is mapped to a string, we need it as a character