diff --git a/src/plugins/debugger/cdb/cdbdebugengine.cpp b/src/plugins/debugger/cdb/cdbdebugengine.cpp index cf42ce3faf2..a71aa2ac721 100644 --- a/src/plugins/debugger/cdb/cdbdebugengine.cpp +++ b/src/plugins/debugger/cdb/cdbdebugengine.cpp @@ -1089,6 +1089,25 @@ void CdbDebugEngine::loadAllSymbols() qDebug() << Q_FUNC_INFO; } +QList CdbDebugEngine::moduleSymbols(const QString &moduleName) +{ + QList rc; + QString errorMessage; + bool success = false; + do { + if (m_d->isDebuggeeRunning()) { + errorMessage = tr("Cannot retrieve symbols while the debuggee is running."); + break; + } + if (!getModuleSymbols(m_d->m_pDebugSymbols, moduleName, &rc, &errorMessage)) + break; + success = true; + } while (false); + if (!success) + qWarning("%s\n", qPrintable(errorMessage)); + return rc; +} + static inline int registerFormatBase() { switch(checkedRegisterFormatAction()) { diff --git a/src/plugins/debugger/cdb/cdbdebugengine.h b/src/plugins/debugger/cdb/cdbdebugengine.h index f37bade1cd3..fe91fef5df8 100644 --- a/src/plugins/debugger/cdb/cdbdebugengine.h +++ b/src/plugins/debugger/cdb/cdbdebugengine.h @@ -87,6 +87,7 @@ public: virtual void reloadModules(); virtual void loadSymbols(const QString &moduleName); virtual void loadAllSymbols(); + virtual QList moduleSymbols(const QString &moduleName); virtual void reloadRegisters(); virtual void reloadSourceFiles();