comparison src/share/vm/classfile/classFileParser.hpp @ 20703:0fa1f71a905b

8065634: Crash in InstanceKlass::clean_method_data when _method is NULL Reviewed-by: coleenp, hseigel, poonam
author stefank
date Thu, 11 Dec 2014 11:13:13 +0100
parents 90257dfad6e3
children
comparison
equal deleted inserted replaced
20701:b6585ac86988 20703:0fa1f71a905b
73 Array<u2>* _fields; 73 Array<u2>* _fields;
74 Array<Method*>* _methods; 74 Array<Method*>* _methods;
75 Array<u2>* _inner_classes; 75 Array<u2>* _inner_classes;
76 Array<Klass*>* _local_interfaces; 76 Array<Klass*>* _local_interfaces;
77 Array<Klass*>* _transitive_interfaces; 77 Array<Klass*>* _transitive_interfaces;
78 Annotations* _combined_annotations;
78 AnnotationArray* _annotations; 79 AnnotationArray* _annotations;
79 AnnotationArray* _type_annotations; 80 AnnotationArray* _type_annotations;
80 Array<AnnotationArray*>* _fields_annotations; 81 Array<AnnotationArray*>* _fields_annotations;
81 Array<AnnotationArray*>* _fields_type_annotations; 82 Array<AnnotationArray*>* _fields_type_annotations;
82 InstanceKlass* _klass; // InstanceKlass once created. 83 InstanceKlass* _klass; // InstanceKlass once created.
83 84
84 void set_class_synthetic_flag(bool x) { _synthetic_flag = x; } 85 void set_class_synthetic_flag(bool x) { _synthetic_flag = x; }
85 void set_class_sourcefile_index(u2 x) { _sourcefile_index = x; } 86 void set_class_sourcefile_index(u2 x) { _sourcefile_index = x; }
86 void set_class_generic_signature_index(u2 x) { _generic_signature_index = x; } 87 void set_class_generic_signature_index(u2 x) { _generic_signature_index = x; }
87 void set_class_sde_buffer(char* x, int len) { _sde_buffer = x; _sde_length = len; } 88 void set_class_sde_buffer(char* x, int len) { _sde_buffer = x; _sde_length = len; }
89
90 void create_combined_annotations(TRAPS);
88 91
89 void init_parsed_class_attributes(ClassLoaderData* loader_data) { 92 void init_parsed_class_attributes(ClassLoaderData* loader_data) {
90 _loader_data = loader_data; 93 _loader_data = loader_data;
91 _synthetic_flag = false; 94 _synthetic_flag = false;
92 _sourcefile_index = 0; 95 _sourcefile_index = 0;
108 _fields = NULL; 111 _fields = NULL;
109 _methods = NULL; 112 _methods = NULL;
110 _inner_classes = NULL; 113 _inner_classes = NULL;
111 _local_interfaces = NULL; 114 _local_interfaces = NULL;
112 _transitive_interfaces = NULL; 115 _transitive_interfaces = NULL;
116 _combined_annotations = NULL;
113 _annotations = _type_annotations = NULL; 117 _annotations = _type_annotations = NULL;
114 _fields_annotations = _fields_type_annotations = NULL; 118 _fields_annotations = _fields_type_annotations = NULL;
115 } 119 }
116 120
117 class AnnotationCollector { 121 class AnnotationCollector {