diff options
Diffstat (limited to 'source')
-rw-r--r-- | source/kit/file.c | 20 | ||||
-rw-r--r-- | source/tests/file.test.c | 12 |
2 files changed, 21 insertions, 11 deletions
diff --git a/source/kit/file.c b/source/kit/file.c index 08f1888..df94d59 100644 --- a/source/kit/file.c +++ b/source/kit/file.c @@ -252,21 +252,11 @@ kit_status_t kit_folder_create(kit_str_t path) { kit_status_t kit_folder_create_recursive(kit_str_t path) { for (i32 i = 0;; i++) { - printf(" * %d * \n", i); - fflush(stdout); - printf(" * TAKE * \n"); - fflush(stdout); str_t part = kit_path_take(path, i); - printf(" * TYPE * \n"); - fflush(stdout); - i32 type = kit_path_type(part); + i32 type = kit_path_type(part); if (type == KIT_PATH_FILE) return KIT_ERROR_FILE_ALREADY_EXISTS; if (type == KIT_PATH_NONE) { - printf(" * CREATE * \n"); - fflush(stdout); - printf(" \"%s\" \n", BS(part)); - fflush(stdout); kit_status_t s = kit_folder_create(part); if (s != KIT_OK) return s; @@ -423,15 +413,20 @@ kit_path_list_t kit_folder_enum(kit_str_t path, return result; } + printf(" >> 1 \n"); fflush(stdout); + buf[path.size + 4] = '\\'; buf[path.size + 5] = '*'; + printf(" >> 1 \n"); fflush(stdout); WIN32_FIND_DATAW data; HANDLE find = FindFirstFileA(buf, &data); + printf(" >> 2 \n"); fflush(stdout); if (find == INVALID_HANDLE_VALUE) return result; + printf(" >> 3 \n"); fflush(stdout); do { i64 n = result.files.size; DA_RESIZE(result.files, n + 1); @@ -440,6 +435,7 @@ kit_path_list_t kit_folder_enum(kit_str_t path, break; } + printf(" >> 4 \n"); fflush(stdout); i64 size = 0; while (size < MAX_PATH && data.cFileName[size] != L'\0') size++; DA_INIT(result.files.values[n], size, alloc); @@ -449,10 +445,12 @@ kit_path_list_t kit_folder_enum(kit_str_t path, break; } + printf(" >> 5 \n"); fflush(stdout); for (i64 i = 0; i < size; i++) result.files.values[n].values[i] = data.cFileName[i]; } while (FindNextFileA(find, &data) != 0); + printf(" >> 6 \n"); fflush(stdout); FindClose(find); #else DIR *directory = opendir(buf); diff --git a/source/tests/file.test.c b/source/tests/file.test.c index 9ec51bf..c60c179 100644 --- a/source/tests/file.test.c +++ b/source/tests/file.test.c @@ -214,16 +214,28 @@ TEST("create folder") { } TEST("create folder recursive") { + printf(" 1 \n"); + fflush(stdout); REQUIRE_EQ(folder_create_recursive( SZ("test_folder" PATH_DELIM "foo" PATH_DELIM "bar")), KIT_OK); + printf(" 2 \n"); + fflush(stdout); REQUIRE_EQ(path_type(SZ("test_folder")), PATH_FOLDER); + printf(" 3 \n"); + fflush(stdout); REQUIRE_EQ(path_type(SZ("test_folder" PATH_DELIM "foo")), PATH_FOLDER); + printf(" 4 \n"); + fflush(stdout); REQUIRE_EQ( path_type(SZ("test_folder" PATH_DELIM "foo" PATH_DELIM "bar")), PATH_FOLDER); + printf(" 5 \n"); + fflush(stdout); REQUIRE_EQ(file_remove_recursive(SZ("test_folder"), NULL), KIT_OK); + printf(" 6 \n"); + fflush(stdout); REQUIRE_EQ(path_type(SZ("test_folder")), PATH_NONE); } |