From cb2021d6303bd5831f64fee72627c0d6769ce8ff Mon Sep 17 00:00:00 2001 From: David Schulz Date: Wed, 11 Jan 2017 13:28:51 +0100 Subject: [PATCH] Debugger: Call qVersion() for pre qtHookData Qt versions Change-Id: Id37f4c31b776ea5af960011e7485b11c1a51c8d3 Reviewed-by: Christian Stenger --- share/qtcreator/debugger/cdbbridge.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/share/qtcreator/debugger/cdbbridge.py b/share/qtcreator/debugger/cdbbridge.py index e7486d8244e..a821d4e6a61 100644 --- a/share/qtcreator/debugger/cdbbridge.py +++ b/share/qtcreator/debugger/cdbbridge.py @@ -264,6 +264,14 @@ class Dumper(DumperBase): def qtVersion(self): qtVersion = self.findValueByExpression('((void**)&%s)[2]' % self.qtHookDataSymbolName()) + if qtVersion is None and self.qtCoreModuleName() is not None: + try: + versionValue = cdbext.call(self.qtCoreModuleName() + '!qVersion()') + version = self.extractCString(self.fromNativeValue(versionValue).address()) + (major, minor, patch) = version.decode('latin1').split('.') + qtVersion = 0x10000 * int(major) + 0x100 * int(minor) + int(patch) + except: + pass if qtVersion is None: qtVersion = self.fallbackQtVersion self.qtVersion = lambda: qtVersion