< prev index next >

src/share/vm/gc/g1/g1ConcurrentMark.cpp

Print this page

        

@@ -2406,15 +2406,15 @@
   G1TaskQueueEntry buffer[G1CMMarkStack::EntriesPerChunk];
 
   size_t n = 0;
   G1TaskQueueEntry task_entry;
   while (n < G1CMMarkStack::EntriesPerChunk && _task_queue->pop_local(task_entry)) {
-    buffer[n] = task_entry;
+    buffer[n].assign(task_entry);
     ++n;
   }
   if (n < G1CMMarkStack::EntriesPerChunk) {
-    buffer[n] = G1TaskQueueEntry();
+    buffer[n].assign(G1TaskQueueEntry());
   }
 
   if (n > 0) {
     if (!_cm->mark_stack_push(buffer)) {
       set_has_aborted();
< prev index next >