defineclass.cc (_Jv_VerifyClassName): Verify array names correctly.

* defineclass.cc (_Jv_VerifyClassName): Verify array names
	correctly.

From-SVN: r28606
This commit is contained in:
Anthony Green 1999-08-09 00:25:51 +00:00
parent 63ecaef554
commit e3253af520
2 changed files with 15 additions and 2 deletions

View File

@ -1,4 +1,9 @@
1999-08-09 Anthony Green <green@cygnus.com> 1999-08-08 Anthony Green <green@cygnus.com>
* defineclass.cc (_Jv_VerifyClassName): Verify array names
correctly.
1999-08-08 Anthony Green <green@cygnus.com>
* gij.cc: New file. * gij.cc: New file.
@ -30,7 +35,7 @@
* NEWS: More news. * NEWS: More news.
* THANKS: More thanks. * THANKS: More thanks.
1999-08-09 Kresten Krab Thorup <krab@gnu.org> 1999-08-08 Kresten Krab Thorup <krab@gnu.org>
* resolve.cc (get_ffi_type_from_signature): Generate uint16 for * resolve.cc (get_ffi_type_from_signature): Generate uint16 for
jchar type. jchar type.

View File

@ -1414,6 +1414,14 @@ _Jv_VerifyClassName (unsigned char* ptr, _Jv_ushort length)
unsigned char *limit = ptr+length; unsigned char *limit = ptr+length;
int ch; int ch;
if ('[' == UTF8_PEEK (ptr, limit))
{
if (! _Jv_VerifyOne (++ptr, limit, false))
throw_class_format_error ("erroneous class name");
else
return;
}
next_level: next_level:
do { do {
if ((ch = UTF8_GET (ptr, limit))==-1) if ((ch = UTF8_GET (ptr, limit))==-1)