Merge remote-tracking branch 'origin/3.0'

This commit is contained in:
Eike Ziller
2013-11-20 11:25:36 +01:00
42 changed files with 6049 additions and 6014 deletions
+4 -4
View File
@@ -1589,7 +1589,7 @@ class Dumper(DumperBase):
result += ']'
return result
def threadname(self, maximalStackDepth):
def threadname(self, maximalStackDepth, objectPrivateType):
e = gdb.selected_frame()
out = ""
ns = self.qtNamespace()
@@ -1604,8 +1604,7 @@ class Dumper(DumperBase):
or e.name() == "_ZN14QThreadPrivate5startEPv@4":
try:
thrptr = e.read_var("thr").dereference()
obtype = self.lookupType(ns + "QObjectPrivate").pointer()
d_ptr = thrptr["d_ptr"]["d"].cast(obtype).dereference()
d_ptr = thrptr["d_ptr"]["d"].cast(objectPrivateType).dereference()
try:
objectName = d_ptr["objectName"]
except: # Qt 5
@@ -1635,10 +1634,11 @@ class Dumper(DumperBase):
oldthread = gdb.selected_thread()
if oldthread:
try:
objectPrivateType = gdb.lookup_type(ns + "QObjectPrivate").pointer()
inferior = self.selectedInferior()
for thread in inferior.threads():
thread.switch()
out += self.threadname(maximalStackDepth)
out += self.threadname(maximalStackDepth, objectPrivateType)
except:
pass
oldthread.switch()