summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKrzysztof Raszkowski <krzysztof.raszkowski@intel.com>2020-02-10 16:24:10 +0100
committerDylan Baker <dylan@pnwbakers.com>2020-02-14 15:05:28 -0800
commitd95d524dba83588b5583daef03ed566db2f6ac6f (patch)
treee1bee6a29d3b7bab26b8b84bb2ba8ffceddaaf36
parent7b42cb219d58dd8d38f1ae722695789422c6ed2a (diff)
downloadmesa-d95d524dba83588b5583daef03ed566db2f6ac6f.tar.gz
gallium/swr: simplify environmental variabled expansion code
There were 2 versions of code doing the same thing. Since std::regexp are locale-sensitive better is to leave old good way to do this. Fixes: https://gitlab.freedesktop.org/mesa/mesa/issues/2520 Reviewed-by: Jan Zielinski <jan.zielinski@intel.com> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3761> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3761> (cherry picked from commit 689817c9dfde9a0852f2b2489cb0fa93ffbcb215)
-rw-r--r--.pick_status.json2
-rw-r--r--src/gallium/drivers/swr/rasterizer/codegen/templates/gen_knobs.cpp29
2 files changed, 1 insertions, 30 deletions
diff --git a/.pick_status.json b/.pick_status.json
index 16dc3e8811d..27b04cc47c1 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -1156,7 +1156,7 @@
"description": "gallium/swr: simplify environmental variabled expansion code",
"nominated": false,
"nomination_type": null,
- "resolution": 4,
+ "resolution": 1,
"master_sha": null,
"because_sha": null
},
diff --git a/src/gallium/drivers/swr/rasterizer/codegen/templates/gen_knobs.cpp b/src/gallium/drivers/swr/rasterizer/codegen/templates/gen_knobs.cpp
index b073f73e3a0..194499aa1e0 100644
--- a/src/gallium/drivers/swr/rasterizer/codegen/templates/gen_knobs.cpp
+++ b/src/gallium/drivers/swr/rasterizer/codegen/templates/gen_knobs.cpp
@@ -43,9 +43,6 @@
//========================================================
void KnobBase::autoExpandEnvironmentVariables(std::string& text)
{
-#if (__GNUC__) && (GCC_VERSION < 40900)
- // <regex> isn't implemented prior to gcc-4.9.0
- // unix style variable replacement
size_t start;
while ((start = text.find("${'${'}")) != std::string::npos)
{
@@ -64,32 +61,6 @@ void KnobBase::autoExpandEnvironmentVariables(std::string& text)
const std::string var = GetEnv(text.substr(start + 1, end - start - 1));
text.replace(start, end - start + 1, var);
}
-#else
- {
- // unix style variable replacement
- static std::regex env("\\$\\{([^}]+?)\\}");
- std::smatch match;
- while (std::regex_search(text, match, env))
- {
- const std::string var = GetEnv(match[1].str());
- // certain combinations of gcc/libstd++ have problems with this
- // text.replace(match[0].first, match[0].second, var);
- text.replace(match.prefix().length(), match[0].length(), var);
- }
- }
- {
- // win32 style variable replacement
- static std::regex env("%([^%]+?)%");
- std::smatch match;
- while (std::regex_search(text, match, env))
- {
- const std::string var = GetEnv(match[1].str());
- // certain combinations of gcc/libstd++ have problems with this
- // text.replace(match[0].first, match[0].second, var);
- text.replace(match.prefix().length(), match[0].length(), var);
- }
- }
-#endif
}
//========================================================