From 540c6de10830326c89da4f4c127551a97c2518a5 Mon Sep 17 00:00:00 2001 From: hjk <qtc-committer@nokia.com> Date: Wed, 10 Dec 2008 16:48:12 +0100 Subject: [PATCH] work on std::list dumper --- bin/gdbmacros/gdbmacros.cpp | 11 ++++------- tests/manual/gdbdebugger/simple/app.cpp | 5 +++++ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/bin/gdbmacros/gdbmacros.cpp b/bin/gdbmacros/gdbmacros.cpp index abca7066ee4..9ea2a9aff56 100644 --- a/bin/gdbmacros/gdbmacros.cpp +++ b/bin/gdbmacros/gdbmacros.cpp @@ -661,11 +661,8 @@ void QDumper::endHash() void QDumper::putEllipsis() { - d.beginHash(); - P(d, "name", "Warning:"); - P(d, "value", "<incomplete>"); - P(d, "type", d.innertype); - d.endHash(); + addCommaIfNeeded(); + *this << "{name=\"<incomplete>\",value=\"\",type=\"" << innertype << "\"}"; } // @@ -2120,7 +2117,7 @@ static void qDumpStdList(QDumper &d) int nn = 0; std::list<int>::const_iterator it = list.begin(); - for (nn < 101 && it != list.end(); ++nn, ++it) + for (; nn < 101 && it != list.end(); ++nn, ++it) qCheckAccess(it.operator->()); if (nn > 100) @@ -2135,7 +2132,7 @@ static void qDumpStdList(QDumper &d) const char *stripped = isPointerType(d.innertype) ? strippedInnerType.data() : 0; d << ",children=["; - std::list<int>::const_iterator it = list.begin(); + it = list.begin(); for (int i = 0; i < 1000 && it != list.end(); ++i, ++it) { d.beginHash(); P(d, "name", "[" << i << "]"); diff --git a/tests/manual/gdbdebugger/simple/app.cpp b/tests/manual/gdbdebugger/simple/app.cpp index 35933ec5a20..dbc7eebcd3c 100644 --- a/tests/manual/gdbdebugger/simple/app.cpp +++ b/tests/manual/gdbdebugger/simple/app.cpp @@ -73,6 +73,9 @@ uint qHash(const double & f) return int(f); } +#define X myns +X::QString str; + class Foo { public: @@ -623,6 +626,8 @@ void testQVariant3() void testQVector() { + QVector<int> big(10000); + QVector<Foo *> plist; plist.append(new Foo(1)); plist.append(0); -- GitLab