diff --git a/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C b/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C
index c0d8982880cdebb049705ad02a55495c96528f74..1dfb6ae3ca214ef2af444b0dd0959a29f262a801 100644
--- a/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C
+++ b/applications/utilities/mesh/manipulation/renumberMesh/renumberMesh.C
@@ -717,7 +717,6 @@ int main(int argc, char *argv[])
             Info<< "Writing renumber maps (new to old) to polyMesh." << nl
                 << endl;
         }
-
     }
     else
     {
@@ -889,8 +888,6 @@ int main(int argc, char *argv[])
             mesh,
             mesh.cellCentres()
         );
-        labelList reverseCellOrder = invert(mesh.nCells(), cellOrder);
-
 
         if (sortCoupledFaceCells)
         {
@@ -907,8 +904,10 @@ int main(int argc, char *argv[])
                 }
             }
 
+            labelList reverseCellOrder = invert(mesh.nCells(), cellOrder);
+
+            labelList bndCells(nBndCells);
             labelList bndCellMap(nBndCells);
-            labelList bndCells(bndCellMap);
             nBndCells = 0;
             forAll(pbm, patchI)
             {
@@ -918,15 +917,19 @@ int main(int argc, char *argv[])
                     forAll(faceCells, i)
                     {
                         label cellI = faceCells[i];
-                        bndCells[nBndCells] = cellI;
-                        bndCellMap[nBndCells++] = reverseCellOrder[cellI];
+
+                        if (reverseCellOrder[cellI] != -1)
+                        {
+                            bndCells[nBndCells] = cellI;
+                            bndCellMap[nBndCells++] = reverseCellOrder[cellI];
+                            reverseCellOrder[cellI] = -1;
+                        }
                     }
                 }
             }
             bndCells.setSize(nBndCells);
             bndCellMap.setSize(nBndCells);
 
-
             // Sort
             labelList order;
             sortedOrder(bndCellMap, order);
@@ -942,7 +945,7 @@ int main(int argc, char *argv[])
             }
 
             Info<< "Ordered all " << nBndCells << " cells with a coupled face"
-                << "  to the end of the cell list, starting at " << sortedI
+                << " to the end of the cell list, starting at " << sortedI
                 << endl;
 
             // Compact
diff --git a/applications/utilities/mesh/manipulation/renumberMesh/renumberMeshDict b/applications/utilities/mesh/manipulation/renumberMesh/renumberMeshDict
index b3393b10e34756a79a184fe1a7f12e68a2eaf849..229a25035217186f0084be4a0034920340496299 100644
--- a/applications/utilities/mesh/manipulation/renumberMesh/renumberMeshDict
+++ b/applications/utilities/mesh/manipulation/renumberMesh/renumberMeshDict
@@ -90,4 +90,10 @@ zoltanCoeffs
 }
 
 
+//boundaryFirstCoeffs
+//{
+//    reverse true;
+//}
+
+
 // ************************************************************************* //