Clean up handling of reading module files from stdin. Don't bother trying to
authorRichard Smith <richard-llvm@metafoo.co.uk>
Fri, 2 Sep 2016 00:18:05 +0000 (00:18 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Fri, 2 Sep 2016 00:18:05 +0000 (00:18 +0000)
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

index 66cec412d5c9925ddc6589a605d704f677393b22..0a176f6fa8072f756706b52e63226ef9b40d2387 100644 (file)
@@ -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()))