diff --git a/share/qtcreator/debugger/dumper.py b/share/qtcreator/debugger/dumper.py index cf7f0faba37..db4adb7fd13 100644 --- a/share/qtcreator/debugger/dumper.py +++ b/share/qtcreator/debugger/dumper.py @@ -1862,7 +1862,7 @@ class DumperBase: for i in range(propertyCount): t = self.split('III', dataPtr + properties * 4 + 12 * i) name = self.metaString(metaObjectPtr, t[0], revision) - if qobject: + if qobject and self.qtPropertyFunc: # LLDB doesn't like calling it on a derived class, possibly # due to type information living in a different shared object. #base = self.createValue(qobjectPtr, '@QObject') @@ -1879,6 +1879,10 @@ class DumperBase: continue #warn('COULD NOT EXECUTE: %s' % cmd) #self.putCallItem(name, '@QVariant', base, 'property', '"' + name + '"') + if res is None: + self.bump('failedMetaObjectCall2') + putt(name, ' ') + continue self.putSubItem(name, res) else: putt(name, ' ') diff --git a/share/qtcreator/debugger/gdbbridge.py b/share/qtcreator/debugger/gdbbridge.py index ae3336569d5..1711d5a0b5d 100644 --- a/share/qtcreator/debugger/gdbbridge.py +++ b/share/qtcreator/debugger/gdbbridge.py @@ -1060,7 +1060,7 @@ class Dumper(DumperBase): sym = '_ZN7QObject11customEventEP6QEvent@plt' self.qtCustomEventPltFunc = self.findSymbol(sym) - sym = '_ZNK7%sQObject8propertyEPKc' % strns + sym = '_ZNK%s7QObject8propertyEPKc' % strns self.qtPropertyFunc = self.findSymbol(sym) # This might be wrong, but we can't do better: We found