diff options
author | dec05eba <dec05eba@protonmail.com> | 2018-10-18 07:05:43 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2020-07-06 07:39:33 +0200 |
commit | 6bb79ef033c2a2e8f12c9da6409e3547af40417c (patch) | |
tree | 6fe6c5bea99cc0b38af92a7aa4714e5614de4868 /src/FileUtil.cpp | |
parent | 4e38f2af2b97850ec5b395d4e0ea8310e664e52f (diff) |
Use ranges for dependency version
Diffstat (limited to 'src/FileUtil.cpp')
-rw-r--r-- | src/FileUtil.cpp | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/FileUtil.cpp b/src/FileUtil.cpp index b41808b..d33c94d 100644 --- a/src/FileUtil.cpp +++ b/src/FileUtil.cpp @@ -175,7 +175,11 @@ namespace sibs tinydir_file file; tinydir_readfile(&dir, &file); if(_tinydir_strncmp(file.name, TINYDIR_STRING("."), 1) != 0) - callbackFunc(&file); + { + bool doContinue = callbackFunc(&file); + if(!doContinue) + break; + } tinydir_next(&dir); } @@ -193,7 +197,11 @@ namespace sibs tinydir_file file; tinydir_readfile(&dir, &file); if(file.is_reg) - callbackFunc(&file); + { + bool doContinue = callbackFunc(&file); + if(!doContinue) + break; + } tinydir_next(&dir); } @@ -201,7 +209,7 @@ namespace sibs } // TODO: Handle failure (directory doesn't exist, no permission etc) - void walkDirFilesRecursive(const _tinydir_char_t *directory, FileWalkCallbackFunc callbackFunc) + bool walkDirFilesRecursive(const _tinydir_char_t *directory, FileWalkCallbackFunc callbackFunc) { tinydir_dir dir; tinydir_open(&dir, directory); @@ -211,13 +219,22 @@ namespace sibs tinydir_file file; tinydir_readfile(&dir, &file); if(file.is_reg) - callbackFunc(&file); + { + bool doContinue = callbackFunc(&file); + if(!doContinue) + return false; + } else if(_tinydir_strncmp(file.name, TINYDIR_STRING("."), 1) != 0) - walkDirFilesRecursive(file.path, callbackFunc); + { + bool doContinue = walkDirFilesRecursive(file.path, callbackFunc); + if(!doContinue) + return false; + } tinydir_next(&dir); } tinydir_close(&dir); + return true; } Result<StringView> getFileContent(const _tinydir_char_t *filepath) |