From 66413dc06f98b84f311c51427c93e9f3708a6a2c Mon Sep 17 00:00:00 2001 From: David Schulz Date: Fri, 14 Jun 2024 12:08:28 +0200 Subject: [PATCH] Debugger: do not overwrite qtNamespace in the cdbbridge Change-Id: I11a95710867fd0a6b5a2956a9f8f4a86932038dd Reviewed-by: Christian Stenger --- share/qtcreator/debugger/cdbbridge.py | 28 +++++++++------------------ 1 file changed, 9 insertions(+), 19 deletions(-) diff --git a/share/qtcreator/debugger/cdbbridge.py b/share/qtcreator/debugger/cdbbridge.py index 986774d5086..0b53baf1661 100644 --- a/share/qtcreator/debugger/cdbbridge.py +++ b/share/qtcreator/debugger/cdbbridge.py @@ -314,25 +314,6 @@ class Dumper(DumperBase): self.qtDeclarativeHookDataSymbolName = lambda: hookSymbolName return hookSymbolName - def qtNamespace(self): - namespace = '' - qstrdupSymbolName = '*qstrdup' - coreModuleName = self.qtCoreModuleName() - if coreModuleName is not None: - qstrdupSymbolName = '%s!%s' % (coreModuleName, qstrdupSymbolName) - resolved = cdbext.resolveSymbol(qstrdupSymbolName) - if resolved: - name = resolved[0].split('!')[1] - namespaceIndex = name.find('::') - if namespaceIndex > 0: - namespace = name[:namespaceIndex + 2] - self.qtNamespace = lambda: namespace - self.qtCustomEventFunc = self.parseAndEvaluate( - '%s!%sQObject::customEvent' % - (self.qtCoreModuleName(), namespace)).address() - self.qtNamespace = lambda: namespace - return namespace - def extractQtVersion(self): try: qtVersion = self.parseAndEvaluate( @@ -924,3 +905,12 @@ class Dumper(DumperBase): if self.useDynamicType: val.typeid = self.dynamic_typeid_at_address(val.typeid, address) return val + + def fetchInternalFunctions(self): + coreModuleName = self.qtCoreModuleName() + ns = self.qtNamespace() + if coreModuleName is not None: + self.qtCustomEventFunc = self.parseAndEvaluate( + '%s!%sQObject::customEvent' % + (self.qtCoreModuleName(), ns)).address() + self.fetchInternalFunctions = lambda: None