From 2a28741f90f5353861c271a6173e5ce6b03ff01b Mon Sep 17 00:00:00 2001 From: hjk <qtc-committer@nokia.com> Date: Mon, 4 Jan 2010 16:15:32 +0100 Subject: [PATCH] debugger: str(p) is unsafe to use for invalid char * --- share/qtcreator/gdbmacros/dumper.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/share/qtcreator/gdbmacros/dumper.py b/share/qtcreator/gdbmacros/dumper.py index 4980c0d5cd7..074c2cc95c3 100644 --- a/share/qtcreator/gdbmacros/dumper.py +++ b/share/qtcreator/gdbmacros/dumper.py @@ -177,8 +177,11 @@ def checkPointer(p, align = 1): def isNull(p): - s = str(p) - return s == "0x0" or s.startswith("0x0 ") + # The following can cause evaluation to abort with "UnicodeEncodeError" + # for invalid char *, as their "contents" is being examined + #s = str(p) + #return s == "0x0" or s.startswith("0x0 ") + return p.cast(gdb.lookup_type("unsigned long long")) == 0 movableTypes = set([ "QBrush", "QBitArray", "QByteArray", -- GitLab