From 20c7a167d1cb6fb024d740538261b37b8e32d511 Mon Sep 17 00:00:00 2001 From: Dimitri van Heesch Date: Tue, 25 May 2021 20:42:08 +0200 Subject: Fixed problem where processing symlinks could result in ASSERT: "fd!=0" --- src/doxygen.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/doxygen.cpp b/src/doxygen.cpp index b9cee8d..a54be26 100644 --- a/src/doxygen.cpp +++ b/src/doxygen.cpp @@ -9918,19 +9918,21 @@ static void readDir(FileInfo *fi, ) { std::string name=cfi.fileName(); + std::string path=cfi.dirPath()+"/"; + std::string fullName=path+name; if (fnMap) { - std::unique_ptr fd { createFileDef(QCString(cfi.dirPath()+"/"),QCString(name)) }; + std::unique_ptr fd { createFileDef(QCString(path),QCString(name)) }; FileName *fn=0; if (!name.empty()) { - fn = fnMap->add(QCString(name),QCString(cfi.absFilePath())); + fn = fnMap->add(QCString(name),QCString(fullName)); fn->push_back(std::move(fd)); } } - if (resultList) resultList->push_back(cfi.absFilePath()); - if (resultSet) resultSet->insert(cfi.absFilePath()); - if (killSet) killSet->insert(cfi.absFilePath()); + if (resultList) resultList->push_back(fullName); + if (resultSet) resultSet->insert(fullName); + if (killSet) killSet->insert(fullName); } else if (recursive && (!Config_getBool(EXCLUDE_SYMLINKS) || !cfi.isSymLink()) && -- cgit v0.12