From f2c70dfaba8d6481e86646080c51b6874d95f14e Mon Sep 17 00:00:00 2001 From: dec05eba Date: Tue, 12 Dec 2017 19:46:57 +0100 Subject: Lazily create directories that are needed Directories such as: ~/.sibs ~/.sibs/archive ~/.sibs/lib And directories for each specific library. Also fix bug in getFileContent and fileOverwrite if file already exists --- include/Archive.hpp | 1 + include/FileUtil.hpp | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/Archive.hpp b/include/Archive.hpp index 6d6a55d..2545f77 100644 --- a/include/Archive.hpp +++ b/include/Archive.hpp @@ -8,6 +8,7 @@ namespace sibs class Archive { public: + // Note: renames root directory in archive to @destination static Result extract(const char *source, const char *destination); }; } diff --git a/include/FileUtil.hpp b/include/FileUtil.hpp index 8407a36..5b91aad 100644 --- a/include/FileUtil.hpp +++ b/include/FileUtil.hpp @@ -22,9 +22,11 @@ namespace sibs void walkDirFiles(const char *directory, FileWalkCallbackFunc callbackFunc); void walkDirFilesRecursive(const char *directory, FileWalkCallbackFunc callbackFunc); Result getFileContent(const char *filepath); - bool fileOverwrite(const char *filepath, StringView data); + Result fileOverwrite(const char *filepath, StringView data); const char* getHomeDir(); Result getCwd(); + // Note: Will not delete created directories if this operation fails for some reason + Result createDirectoryRecursive(const char *path); } #endif //SIBS_FILEUTIL_HPP -- cgit v1.2.3