From 5ab254d5b07a3eb5be1af743b6f83282f0c0f2b6 Mon Sep 17 00:00:00 2001
From: Mark Olesen <Mark.Olesen@Germany>
Date: Wed, 23 Feb 2011 15:18:01 +0100
Subject: [PATCH] STYLE: drop dubious string::expand recursion

- was used for on-the-fly, but not needed anymore
---
 src/OpenFOAM/primitives/strings/string/string.C | 14 ++++----------
 src/OpenFOAM/primitives/strings/string/string.H |  7 ++-----
 2 files changed, 6 insertions(+), 15 deletions(-)

diff --git a/src/OpenFOAM/primitives/strings/string/string.C b/src/OpenFOAM/primitives/strings/string/string.C
index 05ad3a5682e..4c9218d77ef 100644
--- a/src/OpenFOAM/primitives/strings/string/string.C
+++ b/src/OpenFOAM/primitives/strings/string/string.C
@@ -93,8 +93,7 @@ Foam::string& Foam::string::replaceAll
 }
 
 
-// Expand all occurences of environment variables and initial tilde sequences
-Foam::string& Foam::string::expand(const bool recurse, const bool allowEmptyVar)
+Foam::string& Foam::string::expand(const bool allowEmpty)
 {
     size_type begVar = 0;
 
@@ -134,20 +133,15 @@ Foam::string& Foam::string::expand(const bool recurse, const bool allowEmptyVar)
 
             if (endVar != npos && endVar != begVar)
             {
-                string varName = substr
+                const string varName = substr
                 (
                     begVar + 1 + delim,
                     endVar - begVar - 2*delim
                 );
 
-                string varValue = getEnv(varName);
-
+                const string varValue = getEnv(varName);
                 if (varValue.size())
                 {
-                    if (recurse)
-                    {
-                        varValue.expand(recurse, allowEmptyVar);
-                    }
                     std::string::replace
                     (
                         begVar,
@@ -156,7 +150,7 @@ Foam::string& Foam::string::expand(const bool recurse, const bool allowEmptyVar)
                     );
                     begVar += varValue.size();
                 }
-                else if (allowEmptyVar)
+                else if (allowEmpty)
                 {
                     std::string::replace
                     (
diff --git a/src/OpenFOAM/primitives/strings/string/string.H b/src/OpenFOAM/primitives/strings/string/string.H
index 8dec948567b..618ce6bb59e 100644
--- a/src/OpenFOAM/primitives/strings/string/string.H
+++ b/src/OpenFOAM/primitives/strings/string/string.H
@@ -180,13 +180,10 @@ public:
         //    - leading "~user" : home directory for specified user
         //    - leading "~OpenFOAM" : site/user OpenFOAM configuration directory
         //
+        //  Any unknown entries are removed silently if allowEmpty is true
         //  \sa
         //  Foam::findEtcFile
-        string& expand
-        (
-            const bool recurse=false,
-            const bool allowEmptyVar = false
-        );
+        string& expand(const bool allowEmpty = false);
 
         //- Remove repeated characters returning true if string changed
         bool removeRepeated(const char);
-- 
GitLab