diff --git a/CHANGELOG.md b/CHANGELOG.md index daf66bbcde..991e2408cd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +# 2.40.3 + +Bugfixes: +* Fix loading example configs from presets directory (#1672) + * Regression of v2.40.2 +* Mark kitty image protocol support for warp terminal on macOS too (Logo) + # 2.40.2 Changes: diff --git a/CMakeLists.txt b/CMakeLists.txt index 28a975684b..4cc6895d41 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.12.0) # target_link_libraries with OBJECT libs & project homepage url project(fastfetch - VERSION 2.40.2 + VERSION 2.40.3 LANGUAGES C DESCRIPTION "Fast neofetch-like system information tool" HOMEPAGE_URL "https://github.com/fastfetch-cli/fastfetch" diff --git a/src/fastfetch.c b/src/fastfetch.c index 5ebb2b707e..19ff6a9821 100644 --- a/src/fastfetch.c +++ b/src/fastfetch.c @@ -466,38 +466,31 @@ static void optionParseConfigFile(FFdata* data, const char* key, const char* val if (parseJsoncFile(absolutePath.chars, strictJson)) return; - if (!ffStrbufContainC(&absolutePath, '/') - #ifdef _WIN32 - && !ffStrbufContainC(&absolutePath, '\\') - #endif - ) + //Try to load as a relative path + + FF_LIST_FOR_EACH(FFstrbuf, path, instance.state.platform.dataDirs) { - //Try to load as a relative path + ffStrbufSet(&absolutePath, path); + ffStrbufAppendS(&absolutePath, "fastfetch/presets/"); + ffStrbufAppendS(&absolutePath, value); + if (needExtension) + ffStrbufAppendS(&absolutePath, ".jsonc"); - FF_LIST_FOR_EACH(FFstrbuf, path, instance.state.platform.dataDirs) - { - ffStrbufSet(&absolutePath, path); - ffStrbufAppendS(&absolutePath, "fastfetch/presets/"); - ffStrbufAppendS(&absolutePath, value); - if (needExtension) - ffStrbufAppendS(&absolutePath, ".jsonc"); + if (parseJsoncFile(absolutePath.chars, strictJson)) return; + } - if (parseJsoncFile(absolutePath.chars, strictJson)) return; - } + //Try to load as a relative path with the directory of fastfetch binary - //Try to load as a relative path with the directory of fastfetch binary + if (instance.state.platform.exePath.length) + { + ffStrbufSet(&absolutePath, &instance.state.platform.exePath); + ffStrbufSubstrBeforeLastC(&absolutePath, '/'); + ffStrbufAppendS(&absolutePath, "/"); + ffStrbufAppendS(&absolutePath, value); + if (needExtension) + ffStrbufAppendS(&absolutePath, ".jsonc"); - if (instance.state.platform.exePath.length) - { - ffStrbufSet(&absolutePath, &instance.state.platform.exePath); - ffStrbufSubstrBeforeLastC(&absolutePath, '/'); - ffStrbufAppendS(&absolutePath, "/"); - ffStrbufAppendS(&absolutePath, value); - if (needExtension) - ffStrbufAppendS(&absolutePath, ".jsonc"); - - if (parseJsoncFile(absolutePath.chars, strictJson)) return; - } + if (parseJsoncFile(absolutePath.chars, strictJson)) return; } //File not found diff --git a/src/logo/logo.c b/src/logo/logo.c index 55be837807..7d80aa40fc 100644 --- a/src/logo/logo.c +++ b/src/logo/logo.c @@ -627,7 +627,12 @@ void ffLogoPrint(void) ffStrbufIgnCaseEqualS(&terminal->processName, "wezterm") || ffStrbufIgnCaseEqualS(&terminal->processName, "wayst") || ffStrbufIgnCaseEqualS(&terminal->processName, "ghostty") || - ffStrbufIgnCaseEqualS(&terminal->processName, "warp"); + #ifdef __APPLE__ + ffStrbufIgnCaseEqualS(&terminal->processName, "WarpTerminal") || + #else + ffStrbufIgnCaseEqualS(&terminal->processName, "warp") || + #endif + false; //Try to load the logo as an image. If it succeeds, print it and return. if(logoPrintImageIfExists(supportsKitty ? FF_LOGO_TYPE_IMAGE_KITTY : FF_LOGO_TYPE_IMAGE_CHAFA, false))