Details
-
Bug
-
Resolution: Done
-
Not Evaluated
-
Qt Creator 4.5.0
-
None
-
80f98a7fb92f1e37404dd7d5e5b58b6f86df024a
Description
The `qdump__QList` debugging helper fails to give a proper insight of the content of `QList<QList<TYPE>>`.
Tested with TYPE=int (see attached minimal working example), it yields the follow debug output (when forcefully rerun into the debugger log):
~"bridgemessage={msg=\"**** CAUGHT EXCEPTION: SUBITEM ****\"},\n" >~"bridgemessage={msg=\"Traceback (most recent call last):\n\"}," >~"\n" >~"bridgemessage={msg=\" File $C:/Qt/Tools/QtCreator/share/qtcreator/debugger/dumper.py$, line 2167, in putSubItem\n self.putItem(value)\n\"}," >~"\n" >~"bridgemessage={msg=\" File $C:/Qt/Tools/QtCreator/share/qtcreator/debugger/dumper.py$, line 2680, in putItem\n self.putItemX(value)\n\"}," >~"\n" >~"bridgemessage={msg=\" File $C:/Qt/Tools/QtCreator/share/qtcreator/debugger/dumper.py$, line 2702, in putItemX\n if self.tryPutPrettyItem(typeName, value):\n\"}," >~"\n" >~"bridgemessage={msg=\" File $C:/Qt/Tools/QtCreator/share/qtcreator/debugger/dumper.py$, line 1233, in tryPutPrettyItem\n dumper(self, value)\n\"}," >~"\n" >~"bridgemessage={msg=\" File $C:/Qt/Tools/QtCreator/share/qtcreator/debugger/qttypes.py$, line 825, in qdump__QList\n return qdumpHelper_QList(d, value, value.type[0])\n\"}," >~"\n" >~"bridgemessage={msg=\" File $C:/Qt/Tools/QtCreator/share/qtcreator/debugger/qttypes.py$, line 832, in qdumpHelper_QList\n (ref, alloc, begin, end) = d.split('IIII', base)\n\"}," >~"\n" >~"bridgemessage={msg=\" File $C:/Qt/Tools/QtCreator/share/qtcreator/debugger/dumper.py$, line 1713, in split\n return val.split(pattern)\n\"}," >~"\n" >~"bridgemessage={msg=\" File $C:/Qt/Tools/QtCreator/share/qtcreator/debugger/dumper.py$, line 3330, in split\n result = struct.unpack_from(self.dumper.packCode + pp, self.data(size))\n\"}," >~"\n" >~"bridgemessage={msg=\" File $C:/Qt/Tools/QtCreator/share/qtcreator/debugger/dumper.py$, line 3285, in data\n res = self.dumper.readRawMemory(self.laddress, size)\n\"}," >~"\n" >~"bridgemessage={msg=\" File $C:/Qt/Tools/QtCreator/share/qtcreator/debugger/gdbbridge.py$, line 817, in readRawMemory\n res = self.selectedInferior().read_memory(address, size)\n\"}," >~"\n" >~"bridgemessage={msg=\"MemoryError: Cannot access memory at address 0x3\n\"}," >~"\n"
The python code has a comment about approximating the results of ` QTypeInfo<T>::isLarge || QTypeInfo<T>::isStatic`.
How can it be fixed? is it even possible?
Attachments
For Gerrit Dashboard: QTCREATORBUG-19812 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
223779,2 | Debugger: Make QList as movable | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |