diff -r 43627549a488 -r 726cb89a9997 src/hotspot/share/classfile/classFileParser.cpp --- a/src/hotspot/share/classfile/classFileParser.cpp Wed Jun 19 05:04:08 2019 -0800 +++ b/src/hotspot/share/classfile/classFileParser.cpp Thu Jun 20 02:10:53 2019 +0200 @@ -4958,6 +4958,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 '.': @@ -5107,7 +5108,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;