From 1011450ca3d81f66ba2ae741196637b329b3b970 Mon Sep 17 00:00:00 2001 From: hjk <qtc-committer@nokia.com> Date: Thu, 27 Aug 2009 18:12:03 +0200 Subject: [PATCH] debugger: make list access in dumpers a bit more robust --- share/qtcreator/gdbmacros/gdbmacros.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/share/qtcreator/gdbmacros/gdbmacros.cpp b/share/qtcreator/gdbmacros/gdbmacros.cpp index 3465b7e9455..e4618dc0d23 100644 --- a/share/qtcreator/gdbmacros/gdbmacros.cpp +++ b/share/qtcreator/gdbmacros/gdbmacros.cpp @@ -839,7 +839,7 @@ void QDumper::putHash(const char *name, QChar value) endHash(); } -#define DUMPUNKNOWN_MESSAGE "<internal error>" +#define DUMPUNKNOWN_MESSAGE "<not in scope>" static void qDumpUnknown(QDumper &d, const char *why = 0) { //d.putItem("iname", d.iname); @@ -1570,6 +1570,10 @@ static void qDumpQList(QDumper &d) qCheckAccess(ldata.d->array); //qCheckAccess(ldata.d->array[0]); //qCheckAccess(ldata.d->array[nn - 1]); + if (ldata.d->begin < 0) + return; + if (ldata.d->begin > ldata.d->end) + return; #if QT_VERSION >= 0x040400 if (ldata.d->ref._q_value <= 0) return; @@ -3256,7 +3260,7 @@ static void qDumpStdVectorBool(QDumper &d) return qDumpStdVector(d); } -static void handleProtocolVersion2and3(QDumper & d) +static void handleProtocolVersion2and3(QDumper &d) { if (!d.outertype[0]) { qDumpUnknown(d); -- GitLab