diff options
author | Tim Jenssen <tim.jenssen@qt.io> | 2020-05-15 17:20:20 +0200 |
---|---|---|
committer | Tim Jenssen <tim.jenssen@qt.io> | 2020-05-15 17:20:20 +0200 |
commit | aa79d30b83fc79e8e18af4da0062ddf21fcd201f (patch) | |
tree | f97fe44d83aa76a9c2629039aa44ebef82d5d91b /share/qtcreator/debugger/dumper.py | |
parent | 765d3a6bc0343f3f26f9d2dbd65373b29f07177f (diff) | |
parent | 7051ba84984b20676ef2de07349e56b0d7bdfa8c (diff) |
Merge remote-tracking branch 'origin/4.12' into qds-1.50qds/v1.5.0
Change-Id: Ia70d4b47f578021f29197a22b3e07e792342d05c
Diffstat (limited to 'share/qtcreator/debugger/dumper.py')
-rw-r--r-- | share/qtcreator/debugger/dumper.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/share/qtcreator/debugger/dumper.py b/share/qtcreator/debugger/dumper.py index da8c322582b..80d8d47feef 100644 --- a/share/qtcreator/debugger/dumper.py +++ b/share/qtcreator/debugger/dumper.py @@ -1089,6 +1089,10 @@ class DumperBase(): return '_ZN%sE' % ''.join(map(lambda x: '%d%s' % (len(x), x), typeName.split('::'))) + def arrayItemCountFromTypeName(self, typeName, fallbackMax=1): + itemCount = typeName[typeName.find('[') + 1:typeName.find(']')] + return int(itemCount) if itemCount else fallbackMax + def putCStyleArray(self, value): arrayType = value.type.unqualified() innerType = arrayType.ltarget @@ -1107,10 +1111,7 @@ class DumperBase(): # This should not happen. But it does, see QTCREATORBUG-14755. # GDB/GCC produce sizeof == 0 for QProcess arr[3] # And in the Nim string dumper. - s = value.type.name - itemCount = s[s.find('[') + 1:s.find(']')] - if not itemCount: - itemCount = '100' + itemCount = self.arrayItemCountFromTypeName(value.type.name, 100) arrayByteSize = int(itemCount) * innerType.size() n = arrayByteSize // innerType.size() |