< prev index next >

src/hotspot/share/c1/c1_Runtime1.cpp

Print this page

@@ -427,13 +427,14 @@
   ValueKlass* vklass = vaklass->element_klass();
 
   // We have a non-empty flattened array, so the element type must have been initialized.
   assert(vklass->is_initialized(), "must be");
   Handle holder(THREAD, vklass->klass_holder()); // keep the vklass alive
+  valueArrayHandle ha(THREAD, array);
   oop obj = vklass->allocate_instance(CHECK);
 
-  void* src = array->value_at_addr(index, vaklass->layout_helper());
+  void* src = ha()->value_at_addr(index, vaklass->layout_helper());
   vklass->value_store(src, vklass->data_for_oop(obj),
                       vaklass->element_byte_size(), true, false);
   thread->set_vm_result(obj);
 JRT_END
 
< prev index next >