diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightMesh.C b/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightMesh.C
index 6216228961504504dad5cafa7dc61b69d69c5a20..cff09a395d6be9a8c42e14e427390acb6284a4cf 100644
--- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightMesh.C
+++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/ensightMesh.C
@@ -70,12 +70,15 @@ void Foam::ensightMesh::correct()
         // Patches are output. Check that they're synced.
         mesh_.boundaryMesh().checkParallelSync(true);
 
-        allPatchNames_ = wordList::subList
-        (
-            mesh_.boundaryMesh().names(),
-            mesh_.boundary().size()
-          - mesh_.globalData().processorPatches().size()
-        );
+        allPatchNames_ = mesh_.boundaryMesh().names();
+        if (Pstream::parRun())
+        {
+            allPatchNames_.setSize
+            (
+                mesh_.boundary().size()
+              - mesh_.globalData().processorPatches().size()
+            );
+        }
 
         if (patches_)
         {