Introduce FFPlatform

This commit is contained in:
Linus Dierheimer
2023-01-15 15:57:26 +01:00
parent dd77ebe11e
commit a1d8e3e598
39 changed files with 622 additions and 560 deletions
+2 -14
View File
@@ -691,20 +691,8 @@ static bool printImageIfExistsSlowPath(FFinstance* instance, FFLogoType type)
requestData.logoPixelWidth = simpleCeil((double) instance->config.logo.width * requestData.characterPixelWidth);
requestData.logoPixelHeight = simpleCeil((double) instance->config.logo.height * requestData.characterPixelHeight);
ffStrbufInitA(&requestData.cacheDir, PATH_MAX * 2);
#if !(defined(_WIN32) || defined(__APPLE__) || defined(__ANDROID__))
ffStrbufAppendS(&requestData.cacheDir, getenv("XDG_CACHE_HOME"));
#endif
if(requestData.cacheDir.length == 0)
{
ffStrbufAppendS(&requestData.cacheDir, instance->state.passwd->pw_dir);
ffStrbufAppendS(&requestData.cacheDir, "/.cache/");
}
else
ffStrbufEnsureEndsWithC(&requestData.cacheDir, '/');
ffStrbufInit(&requestData.cacheDir);
ffStrbufAppend(&requestData.cacheDir, &instance->state.platform.cacheDir);
ffStrbufAppendS(&requestData.cacheDir, "fastfetch");
ffStrbufEnsureFree(&requestData.cacheDir, PATH_MAX);
+3 -3
View File
@@ -205,7 +205,7 @@ static const FFlogo* logoGetBuiltin(const char* name)
return NULL;
}
static const FFlogo* logoGetBuiltinDetected(FFinstance* instance)
static const FFlogo* logoGetBuiltinDetected(const FFinstance* instance)
{
const FFOSResult* os = ffDetectOS(instance);
@@ -225,7 +225,7 @@ static const FFlogo* logoGetBuiltinDetected(FFinstance* instance)
if(logo != NULL)
return logo;
logo = logoGetBuiltin(os->systemName.chars);
logo = logoGetBuiltin(instance->state.platform.systemName.chars);
if(logo != NULL)
return logo;
@@ -293,7 +293,7 @@ static bool loadLogoFile(const FFinstance* instance, FFstrbuf* buffer)
FFstrbuf fullPath;
ffStrbufInit(&fullPath);
FF_LIST_FOR_EACH(FFstrbuf, dataDir, instance->state.dataDirs)
FF_LIST_FOR_EACH(FFstrbuf, dataDir, instance->state.platform.dataDirs)
{
//We need to copy it, because multiple threads might be using dataDirs at the same time
ffStrbufSet(&fullPath, dataDir);