diff options
author | Pavel Labath <labath@google.com> | 2017-10-18 18:52:16 +0000 |
---|---|---|
committer | Pavel Labath <labath@google.com> | 2017-10-18 18:52:16 +0000 |
commit | 0586d1e0d192c67f3df93cfef625235c7e8986da (patch) | |
tree | a0aeeff2ac14bb4a996d97424eb133cbe2af85cb | |
parent | ce0ba3d9ad8cf34dcfb5411a6ab0ba412ee2f656 (diff) |
lldb-server tests: Fix undefined behavior
We were creating a StringRef pointing to a temporary string. Problem manifested
itself when running the test on osx.
git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@316106 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | unittests/tools/lldb-server/tests/MessageObjects.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/unittests/tools/lldb-server/tests/MessageObjects.cpp b/unittests/tools/lldb-server/tests/MessageObjects.cpp index b2b458b4a..158a2ddcd 100644 --- a/unittests/tools/lldb-server/tests/MessageObjects.cpp +++ b/unittests/tools/lldb-server/tests/MessageObjects.cpp @@ -67,8 +67,8 @@ StringRef ThreadInfo::ReadRegister(unsigned int register_id) const { bool ThreadInfo::ReadRegisterAsUint64(unsigned int register_id, uint64_t &value) const { - StringRef value_str(m_registers.lookup(register_id)); - if (value_str.getAsInteger(16, value)) { + std::string value_str(m_registers.lookup(register_id)); + if (!llvm::to_integer(value_str, value, 16)) { GTEST_LOG_(ERROR) << formatv("ThreadInfo: Unable to parse register value at {0}.", register_id) |