diff --git a/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBaffles.C b/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBaffles.C index 04b1f916c9bef56d0c59120bfc4d2788536153ae..0f47b7e6112a1aa282beaffc44937ffca7460703 100644 --- a/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBaffles.C +++ b/src/mesh/snappyHexMesh/meshRefinement/meshRefinementBaffles.C @@ -4525,8 +4525,8 @@ Foam::autoPtr<Foam::mapPolyMesh> Foam::meshRefinement::splitMesh { const face& f = mesh_.faces()[faceI]; - label ownRegion = cellRegion[faceOwner[faceI]]; - label neiRegion = cellRegion[faceNeighbour[faceI]]; + const label ownRegion = cellRegion[faceOwner[faceI]]; + const label neiRegion = cellRegion[faceNeighbour[faceI]]; if (ownRegion == -1 && neiRegion != -1) { @@ -4551,6 +4551,9 @@ Foam::autoPtr<Foam::mapPolyMesh> Foam::meshRefinement::splitMesh } } } + + labelList neiCellRegion; + syncTools::swapBoundaryCellList(mesh_, cellRegion, neiCellRegion); for ( label faceI = mesh_.nInternalFaces(); @@ -4560,9 +4563,10 @@ Foam::autoPtr<Foam::mapPolyMesh> Foam::meshRefinement::splitMesh { const face& f = mesh_.faces()[faceI]; - label ownRegion = cellRegion[faceOwner[faceI]]; + const label ownRegion = cellRegion[faceOwner[faceI]]; + const label neiRegion = neiCellRegion[faceI-mesh_.nInternalFaces()]; - if (ownRegion == -1) + if (ownRegion == -1 && neiRegion != -1) { forAll(f, fp) {