message: Fix another bug in the gather indices.
diff: @@ -1734,10 +1734,12 @@ NCL2FaceRestriction::NCL2FaceRestriction(const FiniteElementSpace &fes,
  if (m==L2FaceValues::DoubleValued &&
  type==FaceType::Interior &&
  info.location==Mesh::FaceLocation::Interior)
  + {
  + if (info.conformity==Mesh::FaceConformity::Conforming)
  {
  for (int d = 0; d < dof; ++d)
  {
  - const int pd = PermuteFaceL2(dim, face_id1, face_id2,
  + int pd = PermuteFaceL2(dim, face_id1, face_id2,
  orientation, dof1d, d);
  const int did = faceMap2[pd];
  const int gid = elementMap[e2*elem_dofs + did];
  @@ -1746,6 +1748,19 @@ NCL2FaceRestriction::NCL2FaceRestriction(const FiniteElementSpace &fes,
  gather_indices[offsets[gid]++] = nfdofs + lid;
  }
  }
  + else
  + {
  + for (int d = 0; d < dof; ++d)
  + {
  + // The permutation is handled by the interpolation operator.
  + const int did = faceMap2[d];
  + const int gid = elementMap[e2*elem_dofs + did];
  + const int lid = dof*f_ind + d;
  + // We shift lid to express that it's e2 of f
  + gather_indices[offsets[gid]++] = nfdofs + lid;
  + }
  + }
  + }
  f_ind++;
  }
  }
  