1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00

Make UTF8->UTF16 conversion null terminate output on empty input.

llvm-svn: 228527
This commit is contained in:
Zachary Turner 2015-02-08 18:08:51 +00:00
parent 9fae6cc7c6
commit d65edd8565

View File

@ -135,8 +135,11 @@ bool convertUTF8ToUTF16String(StringRef SrcUTF8,
assert(DstUTF16.empty()); assert(DstUTF16.empty());
// Avoid OOB by returning early on empty input. // Avoid OOB by returning early on empty input.
if (SrcUTF8.empty()) if (SrcUTF8.empty()) {
DstUTF16.push_back(0);
DstUTF16.pop_back();
return true; return true;
}
const UTF8 *Src = reinterpret_cast<const UTF8 *>(SrcUTF8.begin()); const UTF8 *Src = reinterpret_cast<const UTF8 *>(SrcUTF8.begin());
const UTF8 *SrcEnd = reinterpret_cast<const UTF8 *>(SrcUTF8.end()); const UTF8 *SrcEnd = reinterpret_cast<const UTF8 *>(SrcUTF8.end());