================ @@ -1115,13 +1115,13 @@ void ASTWriter::WriteBlockInfoBlock() { } /// Prepares a path for being written to an AST file by converting it -/// to an absolute path and removing nested './'s. +/// to an absolute path and removing nested './'s and '../'s. /// /// \return \c true if the path was changed. static bool cleanPathForOutput(FileManager &FileMgr, SmallVectorImpl<char> &Path) { bool Changed = FileMgr.makeAbsolutePath(Path); - return Changed | llvm::sys::path::remove_dots(Path); + return Changed | llvm::sys::path::remove_dots(Path, true); ---------------- llvm-beanz wrote:
This looks right to me, but it doesn't seem like this is covered in your test. Can you add a test to make sure that we provide a path with `..` in it that needs to get resolved? https://github.com/llvm/llvm-project/pull/106577 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits