mirror of
https://github.com/fastfetch-cli/fastfetch.git
synced 2026-09-13 10:52:08 +02:00
IO: optimize createSubfolders (#1382)
This commit is contained in:
@@ -23,13 +23,14 @@
|
||||
|
||||
static void createSubfolders(const char* fileName)
|
||||
{
|
||||
FF_STRBUF_AUTO_DESTROY path = ffStrbufCreate();
|
||||
|
||||
char path[PATH_MAX];
|
||||
char *token = NULL;
|
||||
char *pathTail = path;
|
||||
while((token = strchr(fileName, '/')) != NULL)
|
||||
{
|
||||
ffStrbufAppendNS(&path, (uint32_t)(token - fileName + 1), fileName);
|
||||
mkdir(path.chars, S_IRWXU | S_IRGRP | S_IROTH);
|
||||
uint32_t length = (uint32_t)(token - fileName + 1);
|
||||
pathTail = ffStrCopyN(pathTail, fileName, length);
|
||||
mkdir(path, S_IRWXU | S_IRGRP | S_IROTH);
|
||||
fileName = token + 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,12 +8,14 @@
|
||||
|
||||
static void createSubfolders(const char* fileName)
|
||||
{
|
||||
FF_STRBUF_AUTO_DESTROY path = ffStrbufCreate();
|
||||
char path[MAX_PATH];
|
||||
char *token = NULL;
|
||||
char *pathTail = path;
|
||||
while((token = strchr(fileName, '/')) != NULL)
|
||||
{
|
||||
ffStrbufAppendNS(&path, (uint32_t)(token - fileName + 1), fileName);
|
||||
CreateDirectoryA(path.chars, NULL);
|
||||
uint32_t length = (uint32_t)(token - fileName + 1);
|
||||
pathTail = ffStrCopyN(pathTail, fileName, length);
|
||||
CreateDirectoryA(path, NULL);
|
||||
fileName = token + 1;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user