aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libjava/ChangeLog4
-rw-r--r--libjava/jni.cc5
2 files changed, 8 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index d74bd21..16f8e65 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 be79ba9..a4a12a8 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')