diff --git a/libjava/ChangeLog b/libjava/ChangeLog index d74bd217a1cc33e67965b927bc15ff9ae4cfd354..16f8e65d91a207a5fe7ccebb84089db6df98fd0d 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,7 @@ +2001-03-22 Marcus G. Daniels <mgd@swarm.org> + + * jni.cc (add_char): Handle `.' like `/'. + 2001-03-22 Bryce McKinlay <bryce@albatross.co.nz> * java/lang/reflect/Method.java (getExceptionTypes): Call getType() to diff --git a/libjava/jni.cc b/libjava/jni.cc index be79ba95d9f265e99af8feee6efe322019f53878..a4a12a83f476246ff3b7bbc643ad933bb31d3776 100644 --- a/libjava/jni.cc +++ b/libjava/jni.cc @@ -1612,7 +1612,10 @@ add_char (char *buf, jchar c, int *here) buf[(*here)++] = '_'; buf[(*here)++] = '3'; } - else if (c == '/') + + // Also check for `.' here because we might be passed an internal + // qualified class name like `foo.bar'. + else if (c == '/' || c == '.') buf[(*here)++] = '_'; else if ((c >= '0' && c <= '9') || (c >= 'a' && c <= 'z')