diff --git a/src/autoMesh/autoHexMesh/autoHexMeshDriver/layerParameters/layerParameters.C b/src/autoMesh/autoHexMesh/autoHexMeshDriver/layerParameters/layerParameters.C
index 17ad2db042f1463287fc7fb349baee0d169662fd..7f7f3d2f5a75bb63187f2758ead71f6a12938a59 100644
--- a/src/autoMesh/autoHexMesh/autoHexMeshDriver/layerParameters/layerParameters.C
+++ b/src/autoMesh/autoHexMesh/autoHexMeshDriver/layerParameters/layerParameters.C
@@ -279,27 +279,13 @@ Foam::layerParameters::layerParameters
 {
     const dictionary& layersDict = dict.subDict("layers");
 
-    forAllConstIter(dictionary, layersDict, iter)
+    forAll(boundaryMesh, patchI)
     {
-        const word& key = iter().keyword();
+        const word& patchName = boundaryMesh[patchI].name();
 
-        if (layersDict.isDict(key))
+        if (layersDict.found(patchName))
         {
-            label patchI = boundaryMesh.findPatchID(key);
-
-            if (patchI == -1)
-            {
-                FatalErrorIn
-                (
-                    "layerParameters::layerParameters"
-                    "(const dictionary&, const polyBoundaryMesh&)"
-                )   << "Specified illegal patch " << key
-                    << " in layer dictionary." << endl
-                    << "Valid patch names are " << boundaryMesh.names()
-                    << exit(FatalError);
-            }
-
-            const dictionary& layerDict = layersDict.subDict(key);
+            const dictionary& layerDict = layersDict.subDict(patchName);
 
             numLayers_[patchI] =
                 readLabel(layerDict.lookup("nSurfaceLayers"));