diff --git a/libsolidity/lsp/LanguageServer.cpp b/libsolidity/lsp/LanguageServer.cpp index 3020900c0..e0c7dca8c 100644 --- a/libsolidity/lsp/LanguageServer.cpp +++ b/libsolidity/lsp/LanguageServer.cpp @@ -207,8 +207,13 @@ vector LanguageServer::allSolidityFilesFromProject() co auto directoryIterator = fs::recursive_directory_iterator(m_fileRepository.basePath(), fs::symlink_option::recurse); for (fs::directory_entry const& dirEntry: directoryIterator) - if (dirEntry.path().extension() == ".sol") - collectedPaths.push_back(dirEntry.path()); + { + if ( + dirEntry.status().type() == fs::file_type::regular_file && + dirEntry.path().extension() == ".sol" + ) + collectedPaths.push_back(dirEntry.path()); + } return collectedPaths; }