From 9d09d14437f07b537b3d91acf93ec89ca5094a41 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Tue, 4 Sep 2001 03:03:33 +0000 Subject: [PATCH] re PR libgcj/4208 (Problem using 'null' with Java reflection) * java/lang/reflect/natField.cc (set): Allow for case when the value is null. Fixes PR libgcj/4208. From-SVN: r45367 --- libjava/ChangeLog | 6 +++--- libjava/java/lang/reflect/natField.cc | 5 +++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 4c70701a62e..aba2dd3d8ee 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,7 +1,7 @@ -2001-09-02 Tom Tromey +2001-09-03 Tom Tromey - * java/security/spec/AlgorithmParameterSpec.java, - java/security/spec/KeySpec.java: Re-merged with Classpath. + * java/lang/reflect/natField.cc (set): Allow for case when the + value is null. Fixes PR libgcj/4208. * gcj/javaprims.h: Regenerated class list. * java/lang/IllegalThreadStateException.java, diff --git a/libjava/java/lang/reflect/natField.cc b/libjava/java/lang/reflect/natField.cc index b627485b58b..3ca9293a816 100644 --- a/libjava/java/lang/reflect/natField.cc +++ b/libjava/java/lang/reflect/natField.cc @@ -418,9 +418,10 @@ java::lang::reflect::Field::setDouble (jclass caller, jobject obj, jdouble d) } void -java::lang::reflect::Field::set (jclass caller, jobject object, jobject value, jclass type) +java::lang::reflect::Field::set (jclass caller, jobject object, jobject value, + jclass type) { - if (! _Jv_IsInstanceOf (value, type)) + if (value != NULL && ! _Jv_IsInstanceOf (value, type)) throw new java::lang::IllegalArgumentException; void* addr = getAddr (this, caller, object); * (jobject*) addr = value; -- 2.30.2