From a8afa5c65c883786bbb0b4ab6844177248eb29d4 Mon Sep 17 00:00:00 2001 From: hjk Date: Wed, 10 Nov 2021 11:44:40 +0100 Subject: Debugger: Fix setting of Qt version fallback, again Change-Id: I6b6cd448884800cb6d08dbdce15cb99f4ea8ba2b Reviewed-by: Christian Stenger --- share/qtcreator/debugger/dumper.py | 4 ++-- src/plugins/debugger/cdb/cdbengine.cpp | 6 ++++-- src/plugins/debugger/gdb/gdbengine.cpp | 5 ++++- src/plugins/debugger/lldb/lldbengine.cpp | 8 ++++---- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/share/qtcreator/debugger/dumper.py b/share/qtcreator/debugger/dumper.py index 99f3b966fb..fdf64d851f 100644 --- a/share/qtcreator/debugger/dumper.py +++ b/share/qtcreator/debugger/dumper.py @@ -253,8 +253,8 @@ class DumperBase(): #DumperBase.warn('WATCHERS: %s' % self.watchers) def setFallbackQtVersion(self, args): - version = int(args.get('version', '0x%x' % self.fallbackQtVersion), 16) - self.warn("got fallback qt version %x" % version) + version = int(args.get('version', self.fallbackQtVersion)) + DumperBase.warn("got fallback qt version 0x%x" % version) self.fallbackQtVersion = version def resetPerStepCaches(self): diff --git a/src/plugins/debugger/cdb/cdbengine.cpp b/src/plugins/debugger/cdb/cdbengine.cpp index d685d550d0..0c4b42094d 100644 --- a/src/plugins/debugger/cdb/cdbengine.cpp +++ b/src/plugins/debugger/cdb/cdbengine.cpp @@ -2832,8 +2832,10 @@ void CdbEngine::setupScripting(const DebuggerResponse &response) runCommand({command, ScriptCommand}); } - const QString qtVersion = QString::number(runParameters().fallbackQtVersion, 16); - runCommand({"theDumper.setFallbackQtVersion(0x" + qtVersion + ")", ScriptCommand}); + DebuggerCommand cmd0("theDumper.setFallbackQtVersion", ScriptCommand); + cmd0.arg("version", runParameters().fallbackQtVersion); + runCommand(cmd0); + runCommand({"theDumper.loadDumpers(None)", ScriptCommand, [this](const DebuggerResponse &response) { watchHandler()->addDumpers(response.data["result"]["dumpers"]); diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index 8f9f789a67..5e9d337bbd 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -4007,7 +4007,10 @@ void GdbEngine::setupEngine() if (!commands.isEmpty()) runCommand({commands}); - runCommand({"setFallbackQtVersion(0x" + QString::number(rp.fallbackQtVersion, 16) + ")"}); + DebuggerCommand cmd1("setFallbackQtVersion"); + cmd1.arg("version", rp.fallbackQtVersion); + runCommand(cmd1); + runCommand({"loadDumpers", CB(handlePythonSetup)}); // Reload peripheral register description. diff --git a/src/plugins/debugger/lldb/lldbengine.cpp b/src/plugins/debugger/lldb/lldbengine.cpp index 49124aca32..e98c059815 100644 --- a/src/plugins/debugger/lldb/lldbengine.cpp +++ b/src/plugins/debugger/lldb/lldbengine.cpp @@ -264,10 +264,6 @@ void LldbEngine::setupEngine() runCommand(cmd); } - DebuggerCommand cmd0("setFallbackQtVersion"); - cmd0.arg("version", "0x" + QString::number(rp.fallbackQtVersion, 16)); - runCommand(cmd0); - DebuggerCommand cmd1("loadDumpers"); cmd1.callback = [this](const DebuggerResponse &response) { watchHandler()->addDumpers(response.data["dumpers"]); @@ -343,6 +339,10 @@ void LldbEngine::setupEngine() cmd2.flags = Silent; runCommand(cmd2); + + DebuggerCommand cmd0("setFallbackQtVersion"); + cmd0.arg("version", rp.fallbackQtVersion); + runCommand(cmd0); } void LldbEngine::runEngine() -- cgit v1.2.3