diff options
author | Neil <nyamatongwe@gmail.com> | 2013-07-15 16:29:56 +1000 |
---|---|---|
committer | Neil <nyamatongwe@gmail.com> | 2013-07-15 16:29:56 +1000 |
commit | 3668bbdb440f691d1c13853ad7b4f74c520dd510 (patch) | |
tree | 6e3cd55520e36383926c9e817792b0c872b83a77 /src | |
parent | 9fafcbfbf67a5b3a9efa12705b9a3db95f74b65f (diff) | |
download | scintilla-mirror-3668bbdb440f691d1c13853ad7b4f74c520dd510.tar.gz |
Fix out-of-bounds access for characters after end of set.
Diffstat (limited to 'src')
-rw-r--r-- | src/CaseConvert.cxx | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/CaseConvert.cxx b/src/CaseConvert.cxx index d5419d5ce..6f43df816 100644 --- a/src/CaseConvert.cxx +++ b/src/CaseConvert.cxx @@ -397,7 +397,9 @@ public: } const char *Find(int character) { const std::vector<int>::iterator it = std::lower_bound(characters.begin(), characters.end(), character); - if (*it == character) + if (it == characters.end()) + return 0; + else if (*it == character) return conversions[it - characters.begin()].conversion; else return 0; |