diff --git a/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C b/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C
index 28955c4d6f7831cf7ab0d9b20a82d522c931f36d..b13dfb86ef04bc243b54d7517902d8e7a103ce7d 100644
--- a/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C
+++ b/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C
@@ -49,7 +49,7 @@ int main(int argc, char *argv[])
     (
         IOobject
         (
-            mergePolyMesh::defaultRegion,
+            masterRegion,
             runTimeMaster.timeName(),
             runTimeMaster
         )
@@ -63,7 +63,7 @@ int main(int argc, char *argv[])
     (
         IOobject
         (
-            mergePolyMesh::defaultRegion,
+            addRegion,
             runTimeToAdd.timeName(),
             runTimeToAdd
         )
diff --git a/applications/utilities/mesh/manipulation/mergeMeshes/setRoots.H b/applications/utilities/mesh/manipulation/mergeMeshes/setRoots.H
index 7ddd408965db14e24049c8d01167154c32bd6b70..cfbf59cf64af2b013f075e3f60b67c5f0bcbea8a 100644
--- a/applications/utilities/mesh/manipulation/mergeMeshes/setRoots.H
+++ b/applications/utilities/mesh/manipulation/mergeMeshes/setRoots.H
@@ -2,9 +2,11 @@
 
     argList::validArgs.append("master root");
     argList::validArgs.append("master case");
+    argList::validOptions.insert("masterRegion", "name");
 
     argList::validArgs.append("root to add");
     argList::validArgs.append("case to add");
+    argList::validOptions.insert("addRegion", "name");
 
     argList args(argc, argv);
 
@@ -15,9 +17,15 @@
 
     fileName rootDirMaster(args.additionalArgs()[0]);
     fileName caseDirMaster(args.additionalArgs()[1]);
+    word masterRegion = polyMesh::defaultRegion;
+    args.optionReadIfPresent("masterRegion", masterRegion);
 
     fileName rootDirToAdd(args.additionalArgs()[2]);
     fileName caseDirToAdd(args.additionalArgs()[3]);
+    word addRegion = polyMesh::defaultRegion;
+    args.optionReadIfPresent("addRegion", addRegion);
 
-    Info<< "Master:      " << rootDirMaster << " " << caseDirMaster << nl
-        << "mesh to add: " << rootDirToAdd << " " << caseDirToAdd << endl;
+    Info<< "Master:      " << rootDirMaster << " " << caseDirMaster
+        << "  region " << masterRegion << nl
+        << "mesh to add: " << rootDirToAdd << " " << caseDirToAdd
+        << "  region " << addRegion << endl;
diff --git a/applications/utilities/postProcessing/patch/patchIntegrate/patchIntegrate.C b/applications/utilities/postProcessing/patch/patchIntegrate/patchIntegrate.C
index 054c09cac5ba27beee744540cea6708bf1356dd9..8d189dfe28b9df13ea30516a8bfbf390585268c0 100644
--- a/applications/utilities/postProcessing/patch/patchIntegrate/patchIntegrate.C
+++ b/applications/utilities/postProcessing/patch/patchIntegrate/patchIntegrate.C
@@ -38,13 +38,14 @@ Description
 
 int main(int argc, char *argv[])
 {
+#   include "addRegionOption.H"
     timeSelector::addOptions();
     argList::validArgs.append("fieldName");
     argList::validArgs.append("patchName");
 #   include "setRootCase.H"
 #   include "createTime.H"
     instantList timeDirs = timeSelector::select0(runTime, args);
-#   include "createMesh.H"
+#   include "createNamedMesh.H"
 
     word fieldName(args.additionalArgs()[0]);
     word patchName(args.additionalArgs()[1]);