jni.cc (add_char): Correctly encode non-ascii characters.
authorTom Tromey <tromey@redhat.com>
Mon, 2 Apr 2001 19:52:39 +0000 (19:52 +0000)
committerTom Tromey <tromey@gcc.gnu.org>
Mon, 2 Apr 2001 19:52:39 +0000 (19:52 +0000)
* jni.cc (add_char): Correctly encode non-ascii characters.
(add_char): Define even when INTERPRETER not defined.
(mangled_name): Likewise.
(_Jv_GetJNIEnvNewFrame): Likewise.
(_Jv_LookupJNIMethod): Likewise.

From-SVN: r41010

libjava/ChangeLog
libjava/jni.cc

index 259ba86772334492fdc925b0620d9b772da3636a..29885aa1b34dea2947d963d7b0b6146cbc8bc9f1 100644 (file)
@@ -1,3 +1,11 @@
+2001-03-30  Tom Tromey  <tromey@redhat.com>
+
+       * jni.cc (add_char): Correctly encode non-ascii characters.
+       (add_char): Define even when INTERPRETER not defined.
+       (mangled_name): Likewise.
+       (_Jv_GetJNIEnvNewFrame): Likewise.
+       (_Jv_LookupJNIMethod): Likewise.
+
 2001-03-23  Kevin B Hendricks  <khendricks@ivey.uwo.ca>
 
        * configure.host: Enable interpreter for PPC.
index 7fac86ee1261b532ff1fe8da782f1ce232b3c1da..b60823ee893098e9b772b6cd740f8bec5574a5f3 100644 (file)
@@ -1595,8 +1595,6 @@ _Jv_JNI_UnregisterNatives (JNIEnv *, jclass)
 
 \f
 
-#ifdef INTERPRETER
-
 // Add a character to the buffer, encoding properly.
 static void
 add_char (char *buf, jchar c, int *here)
@@ -1622,8 +1620,8 @@ add_char (char *buf, jchar c, int *here)
   else if (c == '/' || c == '.')
     buf[(*here)++] = '_';
   else if ((c >= '0' && c <= '9')
-      || (c >= 'a' && c <= 'z')
-      || (c >= 'A' && c <= 'Z'))
+          || (c >= 'a' && c <= 'z')
+          || (c >= 'A' && c <= 'Z'))
     buf[(*here)++] = (char) c;
   else
     {
@@ -1633,7 +1631,7 @@ add_char (char *buf, jchar c, int *here)
       for (int i = 0; i < 4; ++i)
        {
          int val = c & 0x0f;
-         buf[(*here) + 4 - i] = (val > 10) ? ('a' + val - 10) : ('0' + val);
+         buf[(*here) + 3 - i] = (val > 10) ? ('a' + val - 10) : ('0' + val);
          c >>= 4;
        }
       *here += 4;
@@ -1753,6 +1751,8 @@ _Jv_LookupJNIMethod (jclass klass, _Jv_Utf8Const *name,
   return function;
 }
 
+#ifdef INTERPRETER
+
 // This function is the stub which is used to turn an ordinary (CNI)
 // method call into a JNI call.
 void