File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -216,10 +216,11 @@ void opdi::ParallelOmpLogic::onParallelEnd(void* dataPtr) {
216216
217217 // do not delete data, it is deleted with the handle
218218
219- // transport adjoint access mode of thread 0 to parent task
219+ // if needed, transport adjoint access mode of thread 0 to parent task
220220 ImplicitTaskOmpLogic::Data* taskData = reinterpret_cast <ImplicitTaskOmpLogic::Data*>(parallelData->childTasks [0 ]);
221221
222- this ->internalSetAdjointAccessMode (parallelData->parentTask , taskData->adjointAccessModes .back ());
222+ if (internalGetAdjointAccessMode (parallelData->parentTask ) != taskData->adjointAccessModes .back ())
223+ this ->internalSetAdjointAccessMode (parallelData->parentTask , taskData->adjointAccessModes .back ());
223224
224225 } else {
225226 deleteFunc (parallelData);
You can’t perform that action at this time.
0 commit comments