diff --git a/src/OpenFOAM/primitives/strings/stringOps/stringOps.C b/src/OpenFOAM/primitives/strings/stringOps/stringOps.C
index 6df273e13842a0c66895b9e7ea1d3682609e2f3d..dca9fe5e087f60cbe395df2aeef9e9f20bc40b7c 100644
--- a/src/OpenFOAM/primitives/strings/stringOps/stringOps.C
+++ b/src/OpenFOAM/primitives/strings/stringOps/stringOps.C
@@ -308,7 +308,7 @@ Foam::string Foam::stringOps::getVariable
             }
         }
 
-        if (value.empty())
+        if (!allowEmpty && value.empty())
         {
             FatalIOErrorInFunction
             (
@@ -317,7 +317,8 @@ Foam::string Foam::stringOps::getVariable
                 << name << exit(FatalIOError);
         }
     }
-    else
+
+    if (!allowEmpty && value.empty())
     {
         FatalIOErrorInFunction
         (