re PR libgcj/21020 (java.lang.NoSuchFieldError regression from earlier 4.0.0 snapshot)

2005-04-26  Andrew Haley  <aph@redhat.com>

	PR libgcj/21020:
	* jni.cc (_Jv_JNI_GetAnyFieldID): Use class' loader to find
	field's type.

From-SVN: r98789
This commit is contained in:
Andrew Haley 2005-04-26 20:52:34 +00:00 committed by Tom Tromey
parent 9adcdfb365
commit 88b886f54f
2 changed files with 8 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2005-04-26 Andrew Haley <aph@redhat.com>
PR libgcj/21020:
* jni.cc (_Jv_JNI_GetAnyFieldID): Use class' loader to find
field's type.
2005-04-26 Tom Tromey <tromey@redhat.com>
* javax/swing/text/html/parser/ParserDelegator.java (callBack,

View File

@ -1200,11 +1200,11 @@ _Jv_JNI_GetAnyFieldID (JNIEnv *env, jclass clazz,
char s[len + 1];
for (int i = 0; i <= len; ++i)
s[i] = (sig[i] == '/') ? '.' : sig[i];
jclass field_class = _Jv_FindClassFromSignature ((char *) s, NULL);
java::lang::ClassLoader *loader = clazz->getClassLoaderInternal ();
jclass field_class = _Jv_FindClassFromSignature ((char *) s, loader);
if (! field_class)
throw new java::lang::ClassNotFoundException(JvNewStringUTF(s));
java::lang::ClassLoader *loader = clazz->getClassLoaderInternal ();
while (clazz != NULL)
{
// We acquire the class lock so that fields aren't resolved