diff options
author | hjk <hjk@theqtcompany.com> | 2015-12-08 14:27:42 +0100 |
---|---|---|
committer | Stephane PETITHOMME <toolinfo@yahoo.com> | 2015-12-09 07:37:03 +0000 |
commit | 4099cef35db9c26add8ce8e6d5c4a95aaaa552ca (patch) | |
tree | cb8a88fca34e4ad2aaf8efddcecac6fd99bee3c5 /share/qtcreator/debugger | |
parent | 115960be84009bdfaa68b60e0f3a9d3b04bda14d (diff) | |
download | qt-creator-4099cef35db9c26add8ce8e6d5c4a95aaaa552ca.tar.gz |
Debugger: Better fallback for resolving function local struct types
Function-local struct definitions produces types 'names' like
'QList<main(int, char**)::SomeStruct>'. Remove the part up to
the '::' and rely on local lookup.
Task-number: QTCREATORBUG-15400
Change-Id: Ic73005f294c5f62c504b2d7ded4dd2716d88f2e4
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Diffstat (limited to 'share/qtcreator/debugger')
-rw-r--r-- | share/qtcreator/debugger/dumper.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/share/qtcreator/debugger/dumper.py b/share/qtcreator/debugger/dumper.py index 8a5b51ddca..92139e5d14 100644 --- a/share/qtcreator/debugger/dumper.py +++ b/share/qtcreator/debugger/dumper.py @@ -667,7 +667,12 @@ class DumperBase: else: inner += c skipSpace = False - return inner.strip() + # Handle local struct definitions like QList<main(int, char**)::SomeStruct> + inner = inner.strip() + p = inner.find(')::') + if p > -1: + inner = inner[p+3:] + return inner def putStringValueByAddress(self, addr): elided, data = self.encodeStringHelper(addr, self.displayStringLimit) |