From ebff16f8b18b18ff0a7811fbc252fd54b66fecc2 Mon Sep 17 00:00:00 2001 From: hjk Date: Tue, 1 Dec 2009 15:31:52 +0100 Subject: [PATCH] debugger: fix dumper for QString::isNull() --- share/qtcreator/gdbmacros/gdbmacros.cpp | 5 ++++- tests/auto/debugger/tst_dumpers.cpp | 7 ++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/share/qtcreator/gdbmacros/gdbmacros.cpp b/share/qtcreator/gdbmacros/gdbmacros.cpp index 6463538c5b7..58fe7797065 100644 --- a/share/qtcreator/gdbmacros/gdbmacros.cpp +++ b/share/qtcreator/gdbmacros/gdbmacros.cpp @@ -715,7 +715,10 @@ void QDumper::putBase64Encoded(const char *buf, int n) void QDumper::putStringValue(const QString &str) { if (str.isNull()) { - putItem("value", "\"\" (null)"); + beginItem("value"); + putBase64Encoded("\"\" (null)", 9); + endItem(); + putItem("valueencoded", "5"); } else { putItem("value", str); putItem("valueencoded", "2"); diff --git a/tests/auto/debugger/tst_dumpers.cpp b/tests/auto/debugger/tst_dumpers.cpp index e7050ae1eb8..92c3e7b3379 100644 --- a/tests/auto/debugger/tst_dumpers.cpp +++ b/tests/auto/debugger/tst_dumpers.cpp @@ -462,7 +462,8 @@ static const QByteArray ptrToBa(const void *p, bool symbolicNull = true) static const QByteArray generateQStringSpec(const QString &str, bool isNull = false) { if (isNull) - return QByteArray("value=''' (null)',type='"NS"QString',numchild='0'"); + return QByteArray("value='IiIgKG51bGwp',valueencoded='5'," + "type='"NS"QString',numchild='0'"); return QByteArray("value='%',valueencoded='2',type='"NS"QString',numchild='0'") << utfToBase64(str); @@ -2263,7 +2264,7 @@ void tst_Debugger::dumpQSharedPointer() void tst_Debugger::dumpQString() { QString s; - testDumper("value=''' (null)',type='$T',numchild='0'", + testDumper("value='IiIgKG51bGwp',valueencoded='5',type='$T',numchild='0'", &s, NS"QString", false); s = "abc"; testDumper("value='YQBiAGMA',valueencoded='2',type='$T',numchild='0'", @@ -2427,7 +2428,7 @@ void tst_Debugger::initTestCase() QVERIFY(sizeof(int) == sizeof(d.weakref)); QVERIFY(sizeof(int) == sizeof(d.strongref)); const size_t qObjectPrivateSize = sizeof(QObjectPrivate); - const size_t objectPrivateSize = sizeof(ObjectPrivate); + const size_t objectPrivateSize = sizeof(ObjectPrivate); QVERIFY2(qObjectPrivateSize == objectPrivateSize, QString::fromLatin1("QObjectPrivate=%1 ObjectPrivate=%2").arg(qObjectPrivateSize).arg(objectPrivateSize).toLatin1().constData()); VERIFY_OFFSETOF(threadData); VERIFY_OFFSETOF(extraData);