diff options
author | Zoltan Varga <vargaz@gmail.com> | 2010-08-10 01:44:49 +0400 |
---|---|---|
committer | Zoltan Varga <vargaz@gmail.com> | 2010-08-10 01:44:49 +0400 |
commit | 17d4b66b8ccdfe30312480d25a925e8cddb4bdd2 (patch) | |
tree | 17eb689c7d685ee11ef1943fe4d8fcef814cce20 /data | |
parent | 70f1755ed9268802d8a43c98455da7714bbd9ae2 (diff) |
Avoid exceptions in gdb when encountering unknown struct types.
Diffstat (limited to 'data')
-rw-r--r-- | data/gdb/mono-gdb.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/data/gdb/mono-gdb.py b/data/gdb/mono-gdb.py index fc101f122f9..1ce7e6e2d7b 100644 --- a/data/gdb/mono-gdb.py +++ b/data/gdb/mono-gdb.py @@ -103,8 +103,11 @@ class ObjectPrinter: class_name = obj ['vtable'].dereference ()['klass'].dereference ()['name'].string () if class_name [-2:len(class_name)] == "[]": return {}.__iter__ () - gdb_type = gdb.lookup_type ("struct %s_%s" % (class_ns.replace (".", "_"), class_name)) - return self._iterator(obj.cast (gdb_type)) + try: + gdb_type = gdb.lookup_type ("struct %s_%s" % (class_ns.replace (".", "_"), class_name)) + return self._iterator(obj.cast (gdb_type)) + except: + return {}.__iter__ () except: print sys.exc_info ()[0] print sys.exc_info ()[1] |