This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, master has been updated
       via  40852eed8e304dffd7254d6790850e0a73766d9e (commit)
       via  8d93815d204b4827ff9f1280a73e55861c00f47c (commit)
      from  d0e6fc28334023a42fbae797ece8c8e8526dc1c3 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=40852eed8e304dffd7254d6790850e0a73766d9e
commit 40852eed8e304dffd7254d6790850e0a73766d9e
Merge: d0e6fc2 8d93815
Author:     Kyle Edwards <kyle.edwa...@kitware.com>
AuthorDate: Tue Apr 30 14:30:26 2019 +0000
Commit:     Kitware Robot <kwro...@kitware.com>
CommitDate: Tue Apr 30 10:30:35 2019 -0400

    Merge topic 'source_group-tree-files'
    
    8d93815d20 source_group command ensures that FILES arguments are actually 
files
    
    Acked-by: Kitware Robot <kwro...@kitware.com>
    Merge-request: !3265


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8d93815d204b4827ff9f1280a73e55861c00f47c
commit 8d93815d204b4827ff9f1280a73e55861c00f47c
Author:     Mateusz Janek <stryku2...@gmail.com>
AuthorDate: Thu Apr 25 20:51:40 2019 +0200
Commit:     Mateusz Janek <stryku2...@gmail.com>
CommitDate: Thu Apr 25 20:51:40 2019 +0200

    source_group command ensures that FILES arguments are actually files

diff --git a/Source/cmSourceGroupCommand.cxx b/Source/cmSourceGroupCommand.cxx
index 2bc4c39..5cdacaa 100644
--- a/Source/cmSourceGroupCommand.cxx
+++ b/Source/cmSourceGroupCommand.cxx
@@ -80,7 +80,10 @@ std::vector<std::string> prepareFilesPathsForTree(
   prepared.reserve(filesPaths.size());
 
   for (auto const& filePath : filesPaths) {
-    prepared.push_back(prepareFilePathForTree(filePath, currentSourceDir));
+    // If provided file path is actually not a file, silently ignore it.
+    if (cmSystemTools::FileExists(filePath, /*isFile=*/true)) {
+      prepared.push_back(prepareFilePathForTree(filePath, currentSourceDir));
+    }
   }
 
   return prepared;
diff --git a/Tests/SourceGroups/CMakeLists.txt 
b/Tests/SourceGroups/CMakeLists.txt
index 813774d..a5740bb 100644
--- a/Tests/SourceGroups/CMakeLists.txt
+++ b/Tests/SourceGroups/CMakeLists.txt
@@ -42,8 +42,16 @@ set(tree_files_with_prefix ${root}/tree_prefix_foo.c
 set(tree_files_with_empty_prefix ${root}/tree_empty_prefix_foo.c
                                  tree_empty_prefix_bar.c)
 
+set(tree_files_which_are_actually_directories ${root}
+                                              ${root}/
+                                              ${root}/sub1
+                                              ${root}/sub1/)
+
 source_group(TREE ${root} FILES ${tree_files_without_prefix})
 
+# Should not crash and not add any files - just silently ignore the directories
+source_group(TREE ${root} FILES ${tree_files_which_are_actually_directories})
+
 source_group(FILES ${tree_files_with_prefix} PREFIX tree_root/subgroup TREE 
${root})
 
 source_group(PREFIX "" FILES ${tree_files_with_empty_prefix} TREE ${root})

-----------------------------------------------------------------------

Summary of changes:
 Source/cmSourceGroupCommand.cxx   | 5 ++++-
 Tests/SourceGroups/CMakeLists.txt | 8 ++++++++
 2 files changed, 12 insertions(+), 1 deletion(-)


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
https://cmake.org/mailman/listinfo/cmake-commits

Reply via email to