diff options
Diffstat (limited to 'src/plugins/debugger/gdb/gdbengine.cpp')
-rw-r--r-- | src/plugins/debugger/gdb/gdbengine.cpp | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp index e53ddd7cf97..82a35e4447b 100644 --- a/src/plugins/debugger/gdb/gdbengine.cpp +++ b/src/plugins/debugger/gdb/gdbengine.cpp @@ -1603,17 +1603,20 @@ QString GdbEngine::cleanupFullName(const QString &fileName) return cleanFilePath; } if (m_baseNameToFullName.isEmpty()) { - QString debugSource = sysroot + "/usr/src/debug"; - if (QFileInfo(debugSource).isDir()) { - QDirIterator it(debugSource, QDirIterator::Subdirectories); - while (it.hasNext()) { - it.next(); - QString name = it.fileName(); - if (!name.startsWith('.')) { - QString path = it.filePath(); - m_baseNameToFullName.insert(name, path); - } - } + FilePath filePath = FilePath::fromString(sysroot + "/usr/src/debug"); + + if (filePath.isDir()) { + filePath.iterateDirectory( + [this](const FilePath &filePath) { + QString name = filePath.fileName(); + if (!name.startsWith('.')) { + QString path = filePath.path(); + m_baseNameToFullName.insert(name, path); + } + }, + {"*"}, + QDir::NoFilter, + QDirIterator::Subdirectories); } } |