diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2012-09-29T01·39-0400 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2012-09-29T01·39-0400 |
commit | e666e1156fba936dce93ccfa2486f67369a97129 (patch) | |
tree | 78bb14c66b321796e598cba4d7def419fa04379d /src/libutil/util.cc | |
parent | f406288cc7cf648001a40b0a96cb97c31347cc5a (diff) |
Handle octal escapes in /proc/self/mountinfo
Diffstat (limited to 'src/libutil/util.cc')
-rw-r--r-- | src/libutil/util.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/libutil/util.cc b/src/libutil/util.cc index 7f95d398147f..afb0dc0b2c07 100644 --- a/src/libutil/util.cc +++ b/src/libutil/util.cc @@ -1101,6 +1101,21 @@ bool endOfList(std::istream & str) } +string decodeOctalEscaped(const string & s) +{ + string r; + for (string::const_iterator i = s.begin(); i != s.end(); ) { + if (*i != '\\') { r += *i++; continue; } + unsigned char c = 0; + ++i; + while (i != s.end() && *i >= '0' && *i < '8') + c = c * 8 + (*i++ - '0'); + r += c; + } + return r; +} + + void ignoreException() { try { |