summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPavel Labath <labath@google.com>2017-10-18 18:52:16 +0000
committerPavel Labath <labath@google.com>2017-10-18 18:52:16 +0000
commit0586d1e0d192c67f3df93cfef625235c7e8986da (patch)
treea0aeeff2ac14bb4a996d97424eb133cbe2af85cb
parentce0ba3d9ad8cf34dcfb5411a6ab0ba412ee2f656 (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.cpp4
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)