src/share/vm/classfile/klassFactory.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File bug_8058575.hs.3 Sdiff src/share/vm/classfile

src/share/vm/classfile/klassFactory.cpp

Print this page




  77                                            cached_class_file);
  78 
  79     if (ptr != stream->buffer()) {
  80       // JVMTI agent has modified class file data.
  81       // Set new class file stream using JVMTI agent modified class file data.
  82       stream = new ClassFileStream(ptr,
  83                                    end_ptr - ptr,
  84                                    stream->source(),
  85                                    stream->need_verify());
  86     }
  87   }
  88 
  89   return stream;
  90 }
  91 
  92 
  93 instanceKlassHandle KlassFactory::create_from_stream(ClassFileStream* stream,
  94                                                      Symbol* name,
  95                                                      ClassLoaderData* loader_data,
  96                                                      Handle protection_domain,
  97                                                      const Klass* host_klass,
  98                                                      GrowableArray<Handle>* cp_patches,
  99                                                      TRAPS) {
 100 
 101   assert(stream != NULL, "invariant");
 102   assert(loader_data != NULL, "invariant");
 103   assert(THREAD->is_Java_thread(), "must be a JavaThread");
 104 
 105   ResourceMark rm;
 106   HandleMark hm;
 107 
 108   JvmtiCachedClassFileData* cached_class_file = NULL;
 109 
 110   ClassFileStream* old_stream = stream;
 111 
 112   // Skip this processing for VM anonymous classes
 113   if (host_klass == NULL) {
 114     stream = check_class_file_load_hook(stream,
 115                                         name,
 116                                         loader_data,
 117                                         protection_domain,




  77                                            cached_class_file);
  78 
  79     if (ptr != stream->buffer()) {
  80       // JVMTI agent has modified class file data.
  81       // Set new class file stream using JVMTI agent modified class file data.
  82       stream = new ClassFileStream(ptr,
  83                                    end_ptr - ptr,
  84                                    stream->source(),
  85                                    stream->need_verify());
  86     }
  87   }
  88 
  89   return stream;
  90 }
  91 
  92 
  93 instanceKlassHandle KlassFactory::create_from_stream(ClassFileStream* stream,
  94                                                      Symbol* name,
  95                                                      ClassLoaderData* loader_data,
  96                                                      Handle protection_domain,
  97                                                      const InstanceKlass* host_klass,
  98                                                      GrowableArray<Handle>* cp_patches,
  99                                                      TRAPS) {
 100 
 101   assert(stream != NULL, "invariant");
 102   assert(loader_data != NULL, "invariant");
 103   assert(THREAD->is_Java_thread(), "must be a JavaThread");
 104 
 105   ResourceMark rm;
 106   HandleMark hm;
 107 
 108   JvmtiCachedClassFileData* cached_class_file = NULL;
 109 
 110   ClassFileStream* old_stream = stream;
 111 
 112   // Skip this processing for VM anonymous classes
 113   if (host_klass == NULL) {
 114     stream = check_class_file_load_hook(stream,
 115                                         name,
 116                                         loader_data,
 117                                         protection_domain,


src/share/vm/classfile/klassFactory.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File