From 1827688dd0cc1d88b653c082cd62849c23049a1c Mon Sep 17 00:00:00 2001 From: hjk Date: Thu, 21 Apr 2016 15:21:38 +0200 Subject: [PATCH] Debugger: Use symbolFile for binary validation In remote setups this is typically a local copy of the executable. Change-Id: I2c4e38559245e7b2cb4a609b93d80fde2b999cec Reviewed-by: Christian Kandeler --- src/plugins/debugger/debuggerengine.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/plugins/debugger/debuggerengine.cpp b/src/plugins/debugger/debuggerengine.cpp index 92dd21b9944..732e1cb0d90 100644 --- a/src/plugins/debugger/debuggerengine.cpp +++ b/src/plugins/debugger/debuggerengine.cpp @@ -1828,8 +1828,11 @@ void DebuggerEngine::validateExecutable(DebuggerRunParameters *sp) return; if (sp->languages == QmlLanguage) return; - QString binary = sp->inferior.executable; - if (binary.isEmpty()) + + QString symbolFile = sp->symbolFile; + if (symbolFile.isEmpty()) + symbolFile = sp->inferior.executable; + if (symbolFile.isEmpty()) return; const bool warnOnRelease = boolSetting(WarnOnReleaseBuilds); @@ -1845,11 +1848,11 @@ void DebuggerEngine::validateExecutable(DebuggerRunParameters *sp) "experience for this binary format."); return; } else if (warnOnRelease) { - if (!binary.endsWith(QLatin1String(".exe"), Qt::CaseInsensitive)) - binary.append(QLatin1String(".exe")); + if (!symbolFile.endsWith(QLatin1String(".exe"), Qt::CaseInsensitive)) + symbolFile.append(QLatin1String(".exe")); QString errorMessage; QStringList rc; - if (getPDBFiles(binary, &rc, &errorMessage) && !rc.isEmpty()) + if (getPDBFiles(symbolFile, &rc, &errorMessage) && !rc.isEmpty()) return; if (!errorMessage.isEmpty()) { detailedWarning.append(QLatin1Char('\n')); @@ -1870,11 +1873,11 @@ void DebuggerEngine::validateExecutable(DebuggerRunParameters *sp) return; } - Utils::ElfReader reader(binary); + Utils::ElfReader reader(symbolFile); Utils::ElfData elfData = reader.readHeaders(); QString error = reader.errorString(); - Internal::showMessage(_("EXAMINING ") + binary, LogDebug); + Internal::showMessage(_("EXAMINING ") + symbolFile, LogDebug); QByteArray msg = "ELF SECTIONS: "; static QList interesting;