hotspot/src/share/vm/classfile/klassFactory.cpp
changeset 36508 5f9eee6b383b
parent 36386 d7f5e6df26df
child 40016 bf6fcd467a7b
--- a/hotspot/src/share/vm/classfile/klassFactory.cpp	Tue Mar 15 13:48:21 2016 -0700
+++ b/hotspot/src/share/vm/classfile/klassFactory.cpp	Thu Mar 17 19:04:01 2016 +0000
@@ -103,11 +103,15 @@
   assert(loader_data != NULL, "invariant");
   assert(THREAD->is_Java_thread(), "must be a JavaThread");
 
+  bool changed_by_loadhook = false;
+
   ResourceMark rm;
   HandleMark hm;
 
   JvmtiCachedClassFileData* cached_class_file = NULL;
 
+  ClassFileStream* old_stream = stream;
+
   stream = prologue(stream,
                     name,
                     loader_data,
@@ -125,8 +129,8 @@
                          ClassFileParser::BROADCAST, // publicity level
                          CHECK_NULL);
 
-  instanceKlassHandle result = parser.create_instance_klass(CHECK_NULL);
-  assert(result == parser.create_instance_klass(THREAD), "invariant");
+  instanceKlassHandle result = parser.create_instance_klass(old_stream != stream, CHECK_NULL);
+  assert(result == parser.create_instance_klass(old_stream != stream, THREAD), "invariant");
 
   if (result.is_null()) {
     return NULL;