Browse Source

Merge topic 'remove-redundant-stat'

d49ea4a4d9 Source: Remove redundant FileIsDirectory checks
f5ff17fcf2 Source: Remove redundant FileIsSymlink checks

Acked-by: Kitware Robot <[email protected]>
Tested-by: buildbot <[email protected]>
Merge-request: !8810
Brad King 2 years ago
parent
commit
7b1e930b0f

+ 2 - 4
Source/CTest/cmCTestTestHandler.cxx

@@ -1711,8 +1711,7 @@ std::string cmCTestTestHandler::FindExecutable(
   // now look in the paths we specified above
   for (unsigned int ai = 0; ai < attempted.size() && fullPath.empty(); ++ai) {
     // first check without exe extension
-    if (cmSystemTools::FileExists(attempted[ai]) &&
-        !cmSystemTools::FileIsDirectory(attempted[ai])) {
+    if (cmSystemTools::FileExists(attempted[ai], true)) {
       fullPath = cmSystemTools::CollapseFullPath(attempted[ai]);
       resultingConfig = attemptedConfigs[ai];
     }
@@ -1721,8 +1720,7 @@ std::string cmCTestTestHandler::FindExecutable(
       failed.push_back(attempted[ai]);
       tempPath =
         cmStrCat(attempted[ai], cmSystemTools::GetExecutableExtension());
-      if (cmSystemTools::FileExists(tempPath) &&
-          !cmSystemTools::FileIsDirectory(tempPath)) {
+      if (cmSystemTools::FileExists(tempPath, true)) {
         fullPath = cmSystemTools::CollapseFullPath(tempPath);
         resultingConfig = attemptedConfigs[ai];
       } else {

+ 1 - 2
Source/cmCTest.cxx

@@ -1004,8 +1004,7 @@ int cmCTest::ProcessSteps()
       for (kk = 0; kk < d.GetNumberOfFiles(); kk++) {
         const char* file = d.GetFile(kk);
         std::string fullname = notes_dir + "/" + file;
-        if (cmSystemTools::FileExists(fullname) &&
-            !cmSystemTools::FileIsDirectory(fullname)) {
+        if (cmSystemTools::FileExists(fullname, true)) {
           if (!this->Impl->NotesFiles.empty()) {
             this->Impl->NotesFiles += ";";
           }

+ 1 - 2
Source/cmFileCommand.cxx

@@ -3020,8 +3020,7 @@ bool HandleCreateLinkCommand(std::vector<std::string> const& args,
   }
 
   // Check if the new file already exists and remove it.
-  if ((cmSystemTools::FileExists(newFileName) ||
-       cmSystemTools::FileIsSymlink(newFileName)) &&
+  if (cmSystemTools::PathExists(newFileName) &&
       !cmSystemTools::RemoveFile(newFileName)) {
     std::ostringstream e;
     e << "Failed to create link '" << newFileName

+ 1 - 2
Source/cmInstallCommand.cxx

@@ -1837,8 +1837,7 @@ bool HandleDirectoryMode(std::vector<std::string> const& args,
       }
 
       // Make sure the name is a directory.
-      if (cmSystemTools::FileExists(dir) &&
-          !cmSystemTools::FileIsDirectory(dir)) {
+      if (cmSystemTools::FileExists(dir, true)) {
         status.SetError(cmStrCat(args[0], " given non-directory \"", args[i],
                                  "\" to install."));
         return false;

+ 2 - 4
Source/cmOutputRequiredFilesCommand.cxx

@@ -414,8 +414,7 @@ protected:
         path += "/";
       }
       path += fname;
-      if (cmSystemTools::FileExists(path, true) &&
-          !cmSystemTools::FileIsDirectory(path)) {
+      if (cmSystemTools::FileExists(path, true)) {
         std::string fp = cmSystemTools::CollapseFullPath(path);
         this->DirectoryToFileToPathMap[extraPath][fname] = fp;
         return fp;
@@ -428,8 +427,7 @@ protected:
         path = path + "/";
       }
       path = path + fname;
-      if (cmSystemTools::FileExists(path, true) &&
-          !cmSystemTools::FileIsDirectory(path)) {
+      if (cmSystemTools::FileExists(path, true)) {
         std::string fp = cmSystemTools::CollapseFullPath(path);
         this->DirectoryToFileToPathMap[extraPath][fname] = fp;
         return fp;

+ 1 - 1
Source/cmake.cxx

@@ -3267,7 +3267,7 @@ int cmake::CheckBuildSystem()
   // If any byproduct of makefile generation is missing we must re-run.
   cmList products{ mf.GetDefinition("CMAKE_MAKEFILE_PRODUCTS") };
   for (auto const& p : products) {
-    if (!(cmSystemTools::FileExists(p) || cmSystemTools::FileIsSymlink(p))) {
+    if (!cmSystemTools::PathExists(p)) {
       if (verbose) {
         cmSystemTools::Stdout(
           cmStrCat("Re-run cmake, missing byproduct: ", p, '\n'));

+ 5 - 7
Source/cmcmd.cxx

@@ -1018,8 +1018,8 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string> const& args,
           // Complain if the -f option was not given and
           // either file does not exist or
           // file could not be removed and still exists
-          bool file_exists_or_forced_remove = cmSystemTools::FileExists(arg) ||
-            cmSystemTools::FileIsSymlink(arg) || force;
+          bool file_exists_or_forced_remove =
+            cmSystemTools::PathExists(arg) || force;
           if (cmSystemTools::FileIsDirectory(arg)) {
             if (!cmRemoveDirectory(arg, recursive)) {
               return_value = 1;
@@ -1239,8 +1239,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string> const& args,
     // supporting them.
     if (args[1] == "create_symlink" && args.size() == 4) {
       std::string const& destinationFileName = args[3];
-      if ((cmSystemTools::FileExists(destinationFileName) ||
-           cmSystemTools::FileIsSymlink(destinationFileName)) &&
+      if (cmSystemTools::PathExists(destinationFileName) &&
           !cmSystemTools::RemoveFile(destinationFileName)) {
         std::string emsg = cmSystemTools::GetLastSystemError();
         std::cerr << "failed to create symbolic link '" << destinationFileName
@@ -1266,8 +1265,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string> const& args,
         return 1;
       }
 
-      if ((cmSystemTools::FileExists(destinationFileName) ||
-           cmSystemTools::FileIsSymlink(destinationFileName)) &&
+      if (cmSystemTools::PathExists(destinationFileName) &&
           !cmSystemTools::RemoveFile(destinationFileName)) {
         std::string emsg = cmSystemTools::GetLastSystemError();
         std::cerr << "failed to create hard link '" << destinationFileName
@@ -1750,7 +1748,7 @@ int cmcmd::SymlinkExecutable(std::vector<std::string> const& args)
 cmsys::Status cmcmd::SymlinkInternal(std::string const& file,
                                      std::string const& link)
 {
-  if (cmSystemTools::FileExists(link) || cmSystemTools::FileIsSymlink(link)) {
+  if (cmSystemTools::PathExists(link)) {
     cmSystemTools::RemoveFile(link);
   }
   std::string linktext = cmSystemTools::GetFilenameName(file);