summaryrefslogtreecommitdiffstats
path: root/lld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp')
-rw-r--r--lld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/lld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp b/lld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp
index beead3b398a..b0ef1c9e691 100644
--- a/lld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp
+++ b/lld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp
@@ -702,10 +702,10 @@ static const Atom* findDefinedAtomByName(MachOFile &file, Twine name) {
}
static StringRef copyDebugString(StringRef str, BumpPtrAllocator &alloc) {
- std::string *strCopy = alloc.Allocate<std::string>();
- new (strCopy) std::string();
- *strCopy = str;
- return *strCopy;
+ char *strCopy = alloc.Allocate<char>(str.size() + 1);
+ memcpy(strCopy, str.data(), str.size());
+ strCopy[str.size()] = '\0';
+ return strCopy;
}
llvm::Error parseStabs(MachOFile &file,
OpenPOWER on IntegriCloud