From b7758eebb2a02a7bc5a808f2562b7a6624592b32 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Mon, 11 Jan 2021 13:34:57 +0100 Subject: [PATCH] Dumper: Fix std dumper for release builds for std::map, std::set and std::list Fixes: QTCREATORBUG-24901 Change-Id: Ibfb196b17b7270729b052ed27dd51786cb2f8db8 Reviewed-by: Christian Stenger --- share/qtcreator/debugger/stdtypes.py | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/share/qtcreator/debugger/stdtypes.py b/share/qtcreator/debugger/stdtypes.py index a3cc6f2c978..3a8c443ac00 100644 --- a/share/qtcreator/debugger/stdtypes.py +++ b/share/qtcreator/debugger/stdtypes.py @@ -242,7 +242,11 @@ def qdump__std__list(d, value): def qdump__std__list__QNX(d, value): - (proxy, head, size) = value.split("ppp") + try: + _ = value["_Mypair"]["_Myval2"]["_Myproxy"] + (proxy, head, size) = value.split("ppp") + except Exception: + (head, size) = value.split("pp") d.putItemCount(size, 1000) if d.isExpanded(): @@ -330,7 +334,11 @@ def qdump__std__map(d, value): def qdump_std__map__helper(d, value): - (proxy, head, size) = value.split("ppp") + try: + _ = value["_Mypair"]["_Myval2"]["_Myval2"]["_Myproxy"] + (proxy, head, size) = value.split("ppp") + except Exception: + (head, size) = value.split("pp") d.check(0 <= size and size <= 100 * 1000 * 1000) d.putItemCount(size) if d.isExpanded(): @@ -505,7 +513,11 @@ def qdump__std__set(d, value): def qdump__std__set__QNX(d, value): - (proxy, head, size) = value.split("ppp") + try: + _ = value["_Mypair"]["_Myval2"]["_Myval2"]["_Myproxy"] + (proxy, head, size) = value.split("ppp") + except Exception: + (head, size) = value.split("pp") d.check(0 <= size and size <= 100 * 1000 * 1000) d.putItemCount(size) if d.isExpanded():