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:
hjk
2014-03-11 13:24:19 +01:00
parent ab14fc8981
commit b76fb6baba

View File

@@ -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):