Uploaded image for project: 'Qt Creator'
  1. Qt Creator
  2. QTCREATORBUG-19812

QList Debugging Helper fails to parse nested QList

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Not Evaluated
    • Qt Creator 4.7.0-beta1
    • Qt Creator 4.5.0
    • Debugger
    • 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

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            hjk hjk
            yves.m.s. Yves Stadler
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes