diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2020-08-25 21:52:59 +0300 |
---|---|---|
committer | Orgad Shaneh <orgads@gmail.com> | 2020-08-26 09:23:27 +0000 |
commit | 29ecf16ed33377abf3cad23ae56899ed7f05db39 (patch) | |
tree | 746b5420acc7ae21c5bd2aa6be2deec207b0f464 /share | |
parent | fff3b4183349f84f9f68dc7712fdd73c6b2111e7 (diff) |
Dumpers: Fix string+allocator dumper for old GCC versions
Older versions of GCC headers don't have _M_string_length.
Tested against GCC 4.4.4.
Change-Id: Ib3a025edeb26afce7fd54acfb6e965e64200f024
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'share')
-rw-r--r-- | share/qtcreator/debugger/stdtypes.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/share/qtcreator/debugger/stdtypes.py b/share/qtcreator/debugger/stdtypes.py index d8ce961ac0..bf2f95fcf2 100644 --- a/share/qtcreator/debugger/stdtypes.py +++ b/share/qtcreator/debugger/stdtypes.py @@ -695,13 +695,15 @@ def qdumpHelper_std__string(d, value, charType, format): # GCC 9, QTCREATORBUG-22753 try: data = value["_M_dataplus"]["_M_p"].pointer() + except: + data = value.extractPointer() + try: size = int(value["_M_string_length"]) d.putCharArrayHelper(data, size, charType, format) return except: pass - data = value.extractPointer() # We can't lookup the std::string::_Rep type without crashing LLDB, # so hard-code assumption on member position # struct { size_type _M_length, size_type _M_capacity, int _M_refcount; } |