Skip to content

Commit

Permalink
Make sure that an existing path is a directory for create_directories
Browse files Browse the repository at this point in the history
Signed-off-by: Christophe Bedard <[email protected]>
  • Loading branch information
christophebedard committed Sep 21, 2020
1 parent 5e98497 commit 1821c75
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 0 deletions.
2 changes: 2 additions & 0 deletions include/rcpputils/filesystem_helper.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -509,6 +509,8 @@ inline bool create_directories(const path & p)
#else
status = mkdir(p_built.string().c_str(), S_IRWXU | S_IRWXG | S_IRWXO);
#endif
} else if (!p_built.is_directory()) {
status = 1;
}
}
return status == 0;
Expand Down
1 change: 1 addition & 0 deletions test/test_filesystem_helper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -286,6 +286,7 @@ TEST(TestFilesystemHelper, filesystem_manipulation)
EXPECT_TRUE(rcpputils::fs::exists(file));
EXPECT_TRUE(rcpputils::fs::is_regular_file(file));
EXPECT_FALSE(rcpputils::fs::is_directory(file));
EXPECT_FALSE(rcpputils::fs::create_directories(file));
EXPECT_GE(rcpputils::fs::file_size(file), expected_file_size);
EXPECT_THROW(rcpputils::fs::file_size(dir), std::system_error) <<
"file_size is only applicable for files!";
Expand Down

0 comments on commit 1821c75

Please sign in to comment.