add backslash to special chars, fixes bug #1327878
fluxgen fluxgen
1 files changed,
7 insertions(+),
1 deletions(-)
jump to
M
src/ClientPattern.cc
→
src/ClientPattern.cc
@@ -169,7 +169,13 @@ string pat;
Terms::const_iterator it = m_terms.begin(); Terms::const_iterator it_end = m_terms.end(); for (; it != it_end; ++it) { + pat.append(" ("); + // replace special chars like ( ) and [ ] with \( \) and \[ \] + string orig = FbTk::StringUtil::replaceString((*it)->orig, "(", "\\("); + orig = FbTk::StringUtil::replaceString(orig, ")", "\\)"); + orig = FbTk::StringUtil::replaceString(orig, "[", "\\["); + orig = FbTk::StringUtil::replaceString(orig, "]", "\\]"); switch ((*it)->prop) { case NAME:@@ -185,7 +191,7 @@ case ROLE:
pat.append("role="); } - pat.append((*it)->orig); + pat.append(orig); pat.append(")"); }