[llvm] r228527 - Make UTF8->UTF16 conversion null terminate output on empty input.
Zachary Turner
zturner at google.com
Sun Feb 8 10:08:51 PST 2015
Author: zturner
Date: Sun Feb 8 12:08:51 2015
New Revision: 228527
URL: http://llvm.org/viewvc/llvm-project?rev=228527&view=rev
Log:
Make UTF8->UTF16 conversion null terminate output on empty input.
Modified:
llvm/trunk/lib/Support/ConvertUTFWrapper.cpp
Modified: llvm/trunk/lib/Support/ConvertUTFWrapper.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/ConvertUTFWrapper.cpp?rev=228527&r1=228526&r2=228527&view=diff
==============================================================================
--- llvm/trunk/lib/Support/ConvertUTFWrapper.cpp (original)
+++ llvm/trunk/lib/Support/ConvertUTFWrapper.cpp Sun Feb 8 12:08:51 2015
@@ -135,8 +135,11 @@ bool convertUTF8ToUTF16String(StringRef
assert(DstUTF16.empty());
// Avoid OOB by returning early on empty input.
- if (SrcUTF8.empty())
+ if (SrcUTF8.empty()) {
+ DstUTF16.push_back(0);
+ DstUTF16.pop_back();
return true;
+ }
const UTF8 *Src = reinterpret_cast<const UTF8 *>(SrcUTF8.begin());
const UTF8 *SrcEnd = reinterpret_cast<const UTF8 *>(SrcUTF8.end());
More information about the llvm-commits
mailing list