diff --git a/src/common/caching.c b/src/common/caching.c index cc51bd08b..ffb0b3acf 100644 --- a/src/common/caching.c +++ b/src/common/caching.c @@ -31,7 +31,7 @@ static void writeCacheFile(FFinstance* instance, const char* moduleName, const c FFstrbuf path; ffStrbufInitA(&path, 64); getCacheFilePath(instance, moduleName, extension, &path); - ffWriteFileContent(path.chars, content); + ffWriteFileBuffer(path.chars, content); ffStrbufDestroy(&path); } diff --git a/src/common/io.c b/src/common/io.c index 535479889..016346d59 100644 --- a/src/common/io.c +++ b/src/common/io.c @@ -6,11 +6,6 @@ #include #include -bool ffWriteFDContent(int fd, const FFstrbuf* content) -{ - return write(fd, content->chars, content->length) != -1; -} - static void createSubfolders(const char* fileName) { FFstrbuf path; @@ -27,7 +22,17 @@ static void createSubfolders(const char* fileName) ffStrbufDestroy(&path); } -bool ffWriteFileContent(const char* fileName, const FFstrbuf* content) +bool ffWriteFDData(int fd, size_t dataSize, const void* data) +{ + return write(fd, data, dataSize) != -1; +} + +bool ffWriteFDBuffer(int fd, const FFstrbuf* content) +{ + return ffWriteFDData(fd, content->length, content->chars); +} + +bool ffWriteFileData(const char* fileName, size_t dataSize, const void* data) { int openFlagsModes = O_WRONLY | O_CREAT | O_TRUNC; int openFlagsRights = S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH; @@ -41,13 +46,18 @@ bool ffWriteFileContent(const char* fileName, const FFstrbuf* content) return false; } - bool ret = ffWriteFDContent(fd, content); + bool ret = ffWriteFDData(fd, dataSize, data); close(fd); return ret; } +bool ffWriteFileBuffer(const char* fileName, const FFstrbuf* buffer) +{ + return ffWriteFileData(fileName, buffer->length, buffer->chars); +} + void ffAppendFDContent(int fd, FFstrbuf* buffer) { ssize_t readed = 0; diff --git a/src/fastfetch.h b/src/fastfetch.h index 83c5efae3..31acd1e2c 100644 --- a/src/fastfetch.h +++ b/src/fastfetch.h @@ -413,11 +413,14 @@ void ffListFeatures(); void ffStartDetectionThreads(FFinstance* instance); //common/io.c +bool ffWriteFDData(int fd, size_t dataSize, const void* data); +bool ffWriteFDBuffer(int fd, const FFstrbuf* content); +bool ffWriteFileData(const char* fileName, size_t dataSize, const void* data); +bool ffWriteFileBuffer(const char* fileName, const FFstrbuf* buffer); + void ffAppendFDContent(int fd, FFstrbuf* buffer); bool ffAppendFileContent(const char* fileName, FFstrbuf* buffer); //returns true if open() succeeds. This is used to differentiate between and bool ffGetFileContent(const char* fileName, FFstrbuf* buffer); -bool ffWriteFDContent(int fd, const FFstrbuf* content); -bool ffWriteFileContent(const char* fileName, const FFstrbuf* buffer); bool ffFileExists(const char* fileName, mode_t mode); void ffSuppressIO(bool suppress); // Not thread safe! diff --git a/src/logo/image/image.c b/src/logo/image/image.c index 9741e5c87..bf0aacbc3 100644 --- a/src/logo/image/image.c +++ b/src/logo/image/image.c @@ -94,7 +94,7 @@ static void writeCacheStrbuf(FFLogoRequestData* requestData, const FFstrbuf* val { uint32_t cacheDirLength = requestData->cacheDir.length; ffStrbufAppendS(&requestData->cacheDir, cacheFileName); - ffWriteFileContent(requestData->cacheDir.chars, value); + ffWriteFileBuffer(requestData->cacheDir.chars, value); ffStrbufSubstrBefore(&requestData->cacheDir, cacheDirLength); } @@ -127,7 +127,7 @@ static void printImagePixels(FFinstance* instance, FFLogoRequestData* requestDat //Write result to stdout ffPrintCharTimes(' ', instance->config.logoPaddingLeft); fflush(stdout); - ffWriteFDContent(STDOUT_FILENO, result); + ffWriteFDBuffer(STDOUT_FILENO, result); //Go to upper left corner fputs("\033[9999999D", stdout);