From 3ff03ea9419e0070c4a71dce933e0986bc7d87ea Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Fri, 21 Jan 2011 12:50:13 +0100 Subject: [PATCH] Debugger: Fix CDB autodetection for 32bit builds on 64bit systems. --- src/plugins/debugger/cdb/cdboptions.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/plugins/debugger/cdb/cdboptions.cpp b/src/plugins/debugger/cdb/cdboptions.cpp index 2b99f933073..25865f9f634 100644 --- a/src/plugins/debugger/cdb/cdboptions.cpp +++ b/src/plugins/debugger/cdb/cdboptions.cpp @@ -242,11 +242,15 @@ bool CdbOptions::autoDetectExecutable(QString *outPath, bool *is64bitIn /* = 0 return true; } #else - *outPath = checkCdbExecutable(programDir + QLatin1String(" (x64)"), QString(), checkedDirectories); - if (!outPath->isEmpty()) { - if (is64bitIn) - *is64bitIn = true; - return true; + // A 32bit process on 64 bit sees "ProgramFiles\Debg.. (x64)" + if (programDir.endsWith(QLatin1String(" (x86)"))) { + *outPath = checkCdbExecutable(programDir.left(programDir.size() - 6), + QLatin1String(" (x64)"), checkedDirectories); + if (!outPath->isEmpty()) { + if (is64bitIn) + *is64bitIn = true; + return true; + } } #endif return false;