summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/debugger/cdb/cdbsymbolgroupcontext.cpp5
-rw-r--r--src/plugins/debugger/watchhandler.cpp2
2 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/debugger/cdb/cdbsymbolgroupcontext.cpp b/src/plugins/debugger/cdb/cdbsymbolgroupcontext.cpp
index f656e71e36..c0a9cf8873 100644
--- a/src/plugins/debugger/cdb/cdbsymbolgroupcontext.cpp
+++ b/src/plugins/debugger/cdb/cdbsymbolgroupcontext.cpp
@@ -230,7 +230,10 @@ bool WatchHandleDumperInserter::expandPointerToDumpable(const WatchData &wd, QSt
const int classPos = wd.value.indexOf(" class ");
if (classPos == -1)
break;
- const QString hexAddrS = wd.value.mid(0, classPos);
+ // Fix CDB word separator '0x00000000`0012fe10'.
+ QString hexAddrS = wd.value.mid(0, classPos);
+ if (hexAddrS.size() > 11 && hexAddrS.at(10) == QLatin1Char('`'))
+ hexAddrS.remove(10, 1);
if (m_hexNullPattern.exactMatch(hexAddrS))
break;
const QByteArray type = stripPointerType(wd.type);
diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp
index f5735b4b06..c28c100956 100644
--- a/src/plugins/debugger/watchhandler.cpp
+++ b/src/plugins/debugger/watchhandler.cpp
@@ -733,7 +733,7 @@ QVariant WatchModel::data(const QModelIndex &idx, int role) const
case LocalsIsWatchpointAtPointerValueRole:
if (isPointerType(data.type))
return engine()->breakHandler()
- ->watchPointAt(pointerValue(data.addr));
+ ->watchPointAt(pointerValue(data.value));
return false;
default: