src/hotspot/share/classfile/classFileParser.cpp
changeset 55437 360f8769d3dc
parent 55313 f72f801b00bd
child 55439 726cb89a9997
--- a/src/hotspot/share/classfile/classFileParser.cpp	Wed Jun 19 12:25:12 2019 +0200
+++ b/src/hotspot/share/classfile/classFileParser.cpp	Wed Jun 19 08:42:15 2019 -0400
@@ -4956,6 +4956,7 @@
 bool ClassFileParser::verify_unqualified_name(const char* name,
                                               unsigned int length,
                                               int type) {
+  if (length == 0) return false;  // Must have at least one char.
   for (const char* p = name; p != name + length; p++) {
     switch(*p) {
       case '.':
@@ -5105,7 +5106,7 @@
           int newlen = c - (char*) signature;
           bool legal = verify_unqualified_name(signature, newlen, LegalClass);
           if (!legal) {
-            classfile_parse_error("Class name contains illegal character "
+            classfile_parse_error("Class name is empty or contains illegal character "
                                   "in descriptor in class file %s",
                                   CHECK_0);
             return NULL;