diff --git a/src/plugins/debugger/cdb/cdboptions.cpp b/src/plugins/debugger/cdb/cdboptions.cpp
index 2b99f93307352438c8d5475a632cbc4afe4c654d..25865f9f63453e7c0c7b8636c0a6c3bc26ffc8e1 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;