summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-readobj/WindowsResourceDumper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/tools/llvm-readobj/WindowsResourceDumper.cpp')
-rw-r--r--llvm/tools/llvm-readobj/WindowsResourceDumper.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/llvm/tools/llvm-readobj/WindowsResourceDumper.cpp b/llvm/tools/llvm-readobj/WindowsResourceDumper.cpp
index d1d415d0916..bbe573d9528 100644
--- a/llvm/tools/llvm-readobj/WindowsResourceDumper.cpp
+++ b/llvm/tools/llvm-readobj/WindowsResourceDumper.cpp
@@ -26,8 +26,11 @@ std::string stripUTF16(const ArrayRef<UTF16> &UTF16Str) {
Result.reserve(UTF16Str.size());
for (UTF16 Ch : UTF16Str) {
- if (Ch <= 0xFF)
- Result += Ch;
+ // UTF16Str will have swapped byte order in case of big-endian machines.
+ // Swap it back in such a case.
+ ulittle16_t ChValue = Ch;
+ if (ChValue <= 0xFF)
+ Result += ChValue;
else
Result += '?';
}
OpenPOWER on IntegriCloud