From 3bd6d7fb788c751539c6de2d1f9bccffdc51e372 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 2 Sep 2016 00:18:05 +0000 Subject: Clean up handling of reading module files from stdin. Don't bother trying to look for a corresponding file, since we're not going to read it anyway. No observable behavior change (though we now avoid pointlessly trying to stat or open a file named "-"). llvm-svn: 280436 --- clang/lib/Serialization/ModuleManager.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'clang/lib/Serialization/ModuleManager.cpp') diff --git a/clang/lib/Serialization/ModuleManager.cpp b/clang/lib/Serialization/ModuleManager.cpp index 66cec41..0a176f6 100644 --- a/clang/lib/Serialization/ModuleManager.cpp +++ b/clang/lib/Serialization/ModuleManager.cpp @@ -408,13 +408,16 @@ bool ModuleManager::lookupModuleFile(StringRef FileName, off_t ExpectedSize, time_t ExpectedModTime, const FileEntry *&File) { + if (FileName == "-") { + File = nullptr; + return false; + } + // Open the file immediately to ensure there is no race between stat'ing and // opening the file. File = FileMgr.getFile(FileName, /*openFile=*/true, /*cacheFailure=*/false); - - if (!File && FileName != "-") { + if (!File) return false; - } if ((ExpectedSize && ExpectedSize != File->getSize()) || (ExpectedModTime && ExpectedModTime != File->getModificationTime())) -- cgit v1.1