diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index 9024e1c87b5e55ce2ed26a1c075c2994517e793c..6ff1cb08c87f58a29557b095849dd8886c976a76 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -3938,7 +3938,7 @@ void GdbEngine::handleVarListChildrenHelper(const GdbMi &item, if (data.type == data.name) { if (isPointerType(parent.type)) { data.exp = "*(" + parent.exp + ')'; - data.name = _("*") + parent.name; + data.name = _("*"); // + parent.name; } else { // A type we derive from? gdb crashes when creating variables here data.exp = parent.exp; diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp index 37d9dc7794cc8ef1aaefe4d058afb6b2df36a91e..ae12376acb18fcd04d24a08ec4435d999d321388 100644 --- a/src/plugins/debugger/watchhandler.cpp +++ b/src/plugins/debugger/watchhandler.cpp @@ -89,7 +89,7 @@ public: { parent = 0; } void setData(const WatchData &data) - { static_cast<WatchData &>(*this) = data; } + { static_cast<WatchData &>(*this) = data; parent = 0; } WatchItem *parent; QList<WatchItem *> children; // fetched children @@ -775,12 +775,15 @@ void WatchModel::emitDataChanged(int column, const QModelIndex &parentIndex) QVariant WatchModel::data(const QModelIndex &idx, int role) const { - const WatchItem &data = *watchItem(idx); + const WatchItem *item = watchItem(idx); + const WatchItem &data = *item; switch (role) { case Qt::DisplayRole: { switch (idx.column()) { case 0: + if (data.name == QLatin1String("*") && item->parent) + return QLatin1String("*") + item->parent->name; return data.name; case 1: { int format = m_handler->m_individualFormats.value(data.iname, -1);