summaryrefslogtreecommitdiff
path: root/src/command_manager.cc
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2014-03-05 20:57:12 +0000
committerMaxime Coste <frrrwww@gmail.com>2014-03-05 20:57:12 +0000
commit8e0b5d67aa2e6dff9128c3f9664dc6447822317d (patch)
tree14416feccd7db4f397828b9db94fd92772e8ae82 /src/command_manager.cc
parent4ba99f7d6f7b36ebecd397315dc225655391e2cb (diff)
Fix segfault in get_until_delimiter
Diffstat (limited to 'src/command_manager.cc')
-rw-r--r--src/command_manager.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/command_manager.cc b/src/command_manager.cc
index 622ab60a..fea4b782 100644
--- a/src/command_manager.cc
+++ b/src/command_manager.cc
@@ -102,20 +102,20 @@ String get_until_delimiter(const String& base, ByteCount& pos, char delimiter)
{
const ByteCount length = base.length();
String str;
- while (true)
+ while (pos < length)
{
char c = base[pos];
if (c == delimiter)
{
if (base[pos-1] != '\\')
- return str;
+ break;
str.back() = delimiter;
}
else
str += c;
- if (++pos == length)
- return str;
+ ++pos;
}
+ return str;
}
String get_until_delimiter(const String& base, ByteCount& pos,