We cannot access ->class field for primitive and array classes (it is NULL). These classes do not declare methods, fields nor constructors.
Signed-off-by: Tomek Grabiec <tgrab...@gmail.com> --- vm/reflection.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/vm/reflection.c b/vm/reflection.c index 154e86e..093d5a7 100644 --- a/vm/reflection.c +++ b/vm/reflection.c @@ -91,6 +91,9 @@ native_vmclass_get_declared_fields(struct vm_object *clazz, if (!vmc) return NULL; + if (vm_class_is_primitive_class(vmc) || vm_class_is_array_class(vmc)) + return vm_object_alloc_array(vm_array_of_java_lang_reflect_Field, 0); + int count; if (public_only) { @@ -160,6 +163,9 @@ native_vmclass_get_declared_methods(struct vm_object *clazz, if (!vmc) return NULL; + if (vm_class_is_primitive_class(vmc) || vm_class_is_array_class(vmc)) + return vm_object_alloc_array(vm_array_of_java_lang_reflect_Field, 0); + int count; if (public_only) { @@ -229,6 +235,9 @@ native_vmclass_get_declared_constructors(struct vm_object *clazz, if (!vmc) return NULL; + if (vm_class_is_primitive_class(vmc) || vm_class_is_array_class(vmc)) + return vm_object_alloc_array(vm_array_of_java_lang_reflect_Field, 0); + int count = 0; for (int i = 0; i < vmc->class->methods_count; i++) { -- 1.6.0.6 ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Jatovm-devel mailing list Jatovm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jatovm-devel