forked from qt-creator/qt-creator
Debugger: Comment out unused threadname code
This should be re-vived at some time for MinGW, until then making clear that it is not used does not hurt. Change-Id: I365c9fb1f859223da2f96b72a33419313438d83b Reviewed-by: Christian Stenger <christian.stenger@digia.com> Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
@@ -1488,64 +1488,64 @@ class Dumper(DumperBase):
|
|||||||
result += ']'
|
result += ']'
|
||||||
return result
|
return result
|
||||||
|
|
||||||
def threadname(self, maximalStackDepth, objectPrivateType):
|
#def threadname(self, maximalStackDepth, objectPrivateType):
|
||||||
e = gdb.selected_frame()
|
# e = gdb.selected_frame()
|
||||||
out = ""
|
# out = ""
|
||||||
ns = self.qtNamespace()
|
# ns = self.qtNamespace()
|
||||||
while True:
|
# while True:
|
||||||
maximalStackDepth -= 1
|
# maximalStackDepth -= 1
|
||||||
if maximalStackDepth < 0:
|
# if maximalStackDepth < 0:
|
||||||
break
|
# break
|
||||||
e = e.older()
|
# e = e.older()
|
||||||
if e == None or e.name() == None:
|
# if e == None or e.name() == None:
|
||||||
break
|
# break
|
||||||
if e.name() == ns + "QThreadPrivate::start" \
|
# if e.name() == ns + "QThreadPrivate::start" \
|
||||||
or e.name() == "_ZN14QThreadPrivate5startEPv@4":
|
# or e.name() == "_ZN14QThreadPrivate5startEPv@4":
|
||||||
try:
|
# try:
|
||||||
thrptr = e.read_var("thr").dereference()
|
# thrptr = e.read_var("thr").dereference()
|
||||||
d_ptr = thrptr["d_ptr"]["d"].cast(objectPrivateType).dereference()
|
# d_ptr = thrptr["d_ptr"]["d"].cast(objectPrivateType).dereference()
|
||||||
try:
|
# try:
|
||||||
objectName = d_ptr["objectName"]
|
# objectName = d_ptr["objectName"]
|
||||||
except: # Qt 5
|
# except: # Qt 5
|
||||||
p = d_ptr["extraData"]
|
# p = d_ptr["extraData"]
|
||||||
if not self.isNull(p):
|
# if not self.isNull(p):
|
||||||
objectName = p.dereference()["objectName"]
|
# objectName = p.dereference()["objectName"]
|
||||||
if not objectName is None:
|
# if not objectName is None:
|
||||||
data, size, alloc = self.stringData(objectName)
|
# data, size, alloc = self.stringData(objectName)
|
||||||
if size > 0:
|
# if size > 0:
|
||||||
s = self.readMemory(data, 2 * size)
|
# s = self.readMemory(data, 2 * size)
|
||||||
|
#
|
||||||
thread = gdb.selected_thread()
|
# thread = gdb.selected_thread()
|
||||||
inner = '{valueencoded="';
|
# inner = '{valueencoded="';
|
||||||
inner += str(Hex4EncodedLittleEndianWithoutQuotes)+'",id="'
|
# inner += str(Hex4EncodedLittleEndianWithoutQuotes)+'",id="'
|
||||||
inner += str(thread.num) + '",value="'
|
# inner += str(thread.num) + '",value="'
|
||||||
inner += s
|
# inner += s
|
||||||
#inner += self.encodeString(objectName)
|
# #inner += self.encodeString(objectName)
|
||||||
inner += '"},'
|
# inner += '"},'
|
||||||
|
#
|
||||||
out += inner
|
# out += inner
|
||||||
except:
|
# except:
|
||||||
pass
|
# pass
|
||||||
return out
|
# return out
|
||||||
|
|
||||||
def threadnames(self, maximalStackDepth):
|
def threadnames(self, maximalStackDepth):
|
||||||
# FIXME: This needs a proper implementation for MinGW, and only there.
|
# FIXME: This needs a proper implementation for MinGW, and only there.
|
||||||
# Linux, Mac and QNX mirror the objectName() to the underlying threads,
|
# Linux, Mac and QNX mirror the objectName() to the underlying threads,
|
||||||
# so we get the names already as part of the -thread-info output.
|
# so we get the names already as part of the -thread-info output.
|
||||||
return '[]'
|
return '[]'
|
||||||
out = '['
|
#out = '['
|
||||||
oldthread = gdb.selected_thread()
|
#oldthread = gdb.selected_thread()
|
||||||
if oldthread:
|
#if oldthread:
|
||||||
try:
|
# try:
|
||||||
objectPrivateType = gdb.lookup_type(ns + "QObjectPrivate").pointer()
|
# objectPrivateType = gdb.lookup_type(ns + "QObjectPrivate").pointer()
|
||||||
inferior = self.selectedInferior()
|
# inferior = self.selectedInferior()
|
||||||
for thread in inferior.threads():
|
# for thread in inferior.threads():
|
||||||
thread.switch()
|
# thread.switch()
|
||||||
out += self.threadname(maximalStackDepth, objectPrivateType)
|
# out += self.threadname(maximalStackDepth, objectPrivateType)
|
||||||
except:
|
# except:
|
||||||
pass
|
# pass
|
||||||
oldthread.switch()
|
# oldthread.switch()
|
||||||
return out + ']'
|
#return out + ']'
|
||||||
|
|
||||||
|
|
||||||
def importPlainDumper(self, printer):
|
def importPlainDumper(self, printer):
|
||||||
|
|||||||
Reference in New Issue
Block a user