diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/polyTopoChange.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/polyTopoChange.C
index aaf1ce6144909fdf166e69742640826d7ba071b8..ccbe736f8d2f1dea53d0287f61ace173faf362b3 100644
--- a/src/dynamicMesh/polyTopoChange/polyTopoChange/polyTopoChange.C
+++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/polyTopoChange.C
@@ -1397,7 +1397,7 @@ void Foam::polyTopoChange::calcCellInflationMaps
     {
         label nCellsFromFaces = 0;
 
-        labelList cellsAroundFace(2, -1);
+        labelList twoCells(2);
 
         // Collect all still existing faces connected to this point.
         forAllConstIter(Map<label>, cellFromFace_, iter)
@@ -1406,20 +1406,22 @@ void Foam::polyTopoChange::calcCellInflationMaps
 
             if (mesh.isInternalFace(oldFaceI))
             {
-                cellsAroundFace[0] = mesh.faceOwner()[oldFaceI];
-                cellsAroundFace[1] = mesh.faceNeighbour()[oldFaceI];
+                twoCells[0] = mesh.faceOwner()[oldFaceI];
+                twoCells[1] = mesh.faceNeighbour()[oldFaceI];
+                cellsFromFaces[nCellsFromFaces++] = objectMap
+                (
+                    iter.key(),
+                    twoCells
+                );
             }
             else
             {
-                cellsAroundFace[0] = mesh.faceOwner()[oldFaceI];
-                cellsAroundFace[1] = -1;
+                cellsFromFaces[nCellsFromFaces++] = objectMap
+                (
+                    iter.key(),
+                    labelList(1, mesh.faceOwner()[oldFaceI])
+                );
             }
-
-            cellsFromFaces[nCellsFromFaces++] = objectMap
-            (
-                iter.key(),
-                cellsAroundFace
-            );
         }
     }