diff --git a/src/OpenFOAM/meshes/meshShapes/face/face.C b/src/OpenFOAM/meshes/meshShapes/face/face.C index 6a258b4f4fd8bc78abdc7005b587c522d5ada695..314a325ada4a14f510ad7317a7c202050b908bf7 100644 --- a/src/OpenFOAM/meshes/meshShapes/face/face.C +++ b/src/OpenFOAM/meshes/meshShapes/face/face.C @@ -287,14 +287,19 @@ int Foam::face::compare(const face& a, const face& b) const label sizeA = a.size(); const label sizeB = b.size(); - // Trivial reject: faces are different size - if (sizeA != sizeB || sizeA == 0) + if (sizeA != sizeB) { + // Trivial reject: faces have different sizes return 0; } + else if (sizeA == 0) + { + // Both faces with zero vertices. Always identical + return 1; + } else if (sizeA == 1) { - // Trivial: face with a single vertex + // Both faces with a single vertex. Simple check return (a[0] == b[0] ? 1 : 0); }