From f92e04374a86c262971f08fe97fede5479722e73 Mon Sep 17 00:00:00 2001 From: hjk Date: Thu, 27 Mar 2014 13:53:33 +0100 Subject: Debugger: Speed up Qt namespace detection in non-Qt projects Task-number: QTCREATORBUG-10610 Change-Id: Idc5a93625fa4a148864709a1cefbcbbab877a8a2 Reviewed-by: Orgad Shaneh Reviewed-by: Christian Stenger --- share/qtcreator/debugger/gdbbridge.py | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'share') diff --git a/share/qtcreator/debugger/gdbbridge.py b/share/qtcreator/debugger/gdbbridge.py index efc108b0b9..f3bfe5a552 100644 --- a/share/qtcreator/debugger/gdbbridge.py +++ b/share/qtcreator/debugger/gdbbridge.py @@ -378,6 +378,11 @@ class Dumper(DumperBase): self.useDynamicType = True self.expandedINames = {} + # The guess does not need to be updated during a run() + # as the result is fixed during that time (ignoring "active" + # dumpers causing loading of shared objects etc). + self.currentQtNamespaceGuess = None + watchers = "" resultVarName = "" options = [] @@ -1534,6 +1539,9 @@ class Dumper(DumperBase): self.importPlainDumper(printer) def qtNamespace(self): + if not self.currentQtNamespaceGuess is None: + return self.currentQtNamespaceGuess + # This only works when called from a valid frame. try: cand = "QArrayData::shared_null" @@ -1559,6 +1567,7 @@ class Dumper(DumperBase): except: pass + self.currentQtNamespaceGuess = "" return "" def bbedit(self, args): -- cgit v1.2.1