diff options
author | hjk <[email protected]> | 2009-07-10 09:48:51 +0200 |
---|---|---|
committer | hjk <[email protected]> | 2009-07-10 09:50:51 +0200 |
commit | 717ae824ce21036e3ebc9a8a7f01ba8c90429eb3 (patch) | |
tree | 2c75c53aafcc1ad2d208828fc569ef50f049d17e /src/plugins/debugger/watchutils.cpp | |
parent | 452c7124224c8983d8cb2b9acc85e1b5f79a7799 (diff) |
debugger: fix regression in QVector dumper
Was broken due to a change in the QVector implementation (See 343e848abc1 and
a07385de156 in Qt master)
Diffstat (limited to 'src/plugins/debugger/watchutils.cpp')
-rw-r--r-- | src/plugins/debugger/watchutils.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/plugins/debugger/watchutils.cpp b/src/plugins/debugger/watchutils.cpp index b82d54e75e1..83486e899e9 100644 --- a/src/plugins/debugger/watchutils.cpp +++ b/src/plugins/debugger/watchutils.cpp @@ -1338,12 +1338,13 @@ void QtDumperHelper::evaluationParameters(const WatchData &data, case QAbstractItemType: inner = data.addr.mid(1); break; - case QVectorType: - extraArgs[1] = QLatin1String("(char*)&(("); - extraArgs[1] += data.exp; - extraArgs[1] += QLatin1String(").d->array)-(char*)"); - extraArgs[1] += data.exp; - extraArgs[1] += QLatin1String(".d"); + case QVectorType: + if (m_qtVersion >= 0x040600) + extraArgs[1] = QString("(char*)&((%1).p->array)-(char*)((%2).p)") + .arg(data.exp).arg(data.exp); + else + extraArgs[1] = QString("(char*)&((%1).d->array)-(char*)((%2).d)") + .arg(data.exp).arg(data.exp); break; case QObjectSlotType: case QObjectSignalType: { |