From bf905de78d4be9fe12d0460bc07230b382061a09 Mon Sep 17 00:00:00 2001 From: Sungbae Yoo Date: Mon, 27 Nov 2017 21:36:04 +0900 Subject: [PATCH] Change static variables for cgroup pattern matching to be local Signed-off-by: Sungbae Yoo Change-Id: I1faea53df9853bfe6ea12578701c5c017b9481ac --- src/cgroup.cpp | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/src/cgroup.cpp b/src/cgroup.cpp index 0087226..c04f6bb 100644 --- a/src/cgroup.cpp +++ b/src/cgroup.cpp @@ -27,19 +27,14 @@ #include #include +#define NAME_PATTERN "^[A-Za-z_][A-Za-z0-9_-]*" +#define PATH_PATTERN "(/*[A-Za-z_][A-Za-z0-9_-]*)*" namespace runtime { -namespace { - -static std::regex namePattern("^[A-Za-z_][A-Za-z0-9_-]*"); -static std::regex pathPattern("(/*[A-Za-z_][A-Za-z0-9_-]*)*"); - -} // namespace - bool Cgroup::existSubsystem(const std::string& name) { - if (!std::regex_match(name, namePattern)) { + if (!std::regex_match(name, std::regex(NAME_PATTERN))) { return false; } @@ -56,7 +51,7 @@ bool Cgroup::existSubsystem(const std::string& name) void Cgroup::createSubsystem(const std::string& name) { - if (!std::regex_match(name, namePattern)) { + if (!std::regex_match(name, std::regex(NAME_PATTERN))) { throw runtime::Exception("Invalid subsystem name"); } @@ -115,7 +110,7 @@ void Cgroup::destroySubsystem(const std::string& name) bool Cgroup::exist(const std::string& subsystem, const std::string& path) { - if (!std::regex_match(path, pathPattern)) { + if (!std::regex_match(path, std::regex(PATH_PATTERN))) { return false; } @@ -132,7 +127,7 @@ bool Cgroup::exist(const std::string& subsystem, const std::string& path) void Cgroup::create(const std::string& subsystem, const std::string& path) { - if (!std::regex_match(path, pathPattern)) { + if (!std::regex_match(path, std::regex(PATH_PATTERN))) { throw runtime::Exception("Invalid path"); } -- 2.34.1