Compare commits

...

4 Commits

Author SHA1 Message Date
Linus Dierheimer 875174e2e0 Release 1.7.5 2022-10-11 14:29:13 +02:00
Linus Dierheimer 4393fa1a47 ffStrbufLastIndexC: account for empty strings
#285
2022-10-11 14:28:35 +02:00
Linus Dierheimer 5ae2031bcf Manually cherry pick shell process name detection 2022-10-11 14:28:21 +02:00
Linus Dierheimer 6b81223002 Print the last element of the default structure
#283
2022-10-10 10:30:52 +02:00
6 changed files with 26 additions and 19 deletions
+1 -1
View File
@@ -10,7 +10,7 @@ trim_trailing_whitespace = true
[*.{md,fflogo}]
trim_trailing_whitespace = false
[*.{txt,fflogo}]
[*.{fflogo}]
insert_final_newline = false
[*.yml]
+8
View File
@@ -1,3 +1,11 @@
# 1.7.5
Fixes a crash on linux that could happen when getting zsh version (#285)
# 1.7.4
The last element in the default structure (currently the color blocks) is now printed again (#283)
# 1.7.3
A lot of small improvements for MacOS & BSD platforms.
+5 -4
View File
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.12.0) # target_link_libraries with OBJECT libs & project homepage url
project(fastfetch
VERSION 1.7.3
VERSION 1.7.5
LANGUAGES C
DESCRIPTION "Fast system information tool"
HOMEPAGE_URL "https://github.com/LinusDierheimer/fastfetch"
@@ -155,9 +155,10 @@ endif()
function(fastfetch_load_text FILENAME OUTVAR)
file(READ "${FILENAME}" TEMP)
string(REPLACE "\n" "\\n" TEMP "${TEMP}")
string(REPLACE "\"" "\\\"" TEMP "${TEMP}")
string(REPLACE "$\\" "" TEMP "${TEMP}")
string(REGEX REPLACE "\n$" "" TEMP "${TEMP}") # Remove trailing newline
string(REPLACE "\n" "\\n" TEMP "${TEMP}") # Replace newlines with \n
string(REPLACE "\"" "\\\"" TEMP "${TEMP}") # Replace quotes with \"
string(REPLACE "$\\" "" TEMP "${TEMP}") # Remove $\, so we can unescape some things
set("${OUTVAR}" "${TEMP}" PARENT_SCOPE)
endfunction(fastfetch_load_text)
+1 -2
View File
@@ -95,7 +95,7 @@ static void getTerminalShell(FFTerminalShellResult* result, const char* pid)
strcasecmp(name, "dash") == 0 ||
strcasecmp(name, "git-shell") == 0
) {
ffStrbufAppendS(&result->shellProcessName, name);
ffStrbufSetS(&result->shellProcessName, name); // prevent from `fishbash`
getProcessInformation(pid, &result->shellProcessName, &result->shellExe, &result->shellExeName);
getTerminalShell(result, ppid);
@@ -210,7 +210,6 @@ static void getShellVersionZsh(FFstrbuf* exe, FFstrbuf* version)
"--version",
NULL
});
ffStrbufTrimRight(version, '\n');
ffStrbufSubstrBeforeLastC(version, ' ');
ffStrbufSubstrAfterFirstC(version, ' ');
}
+8 -12
View File
@@ -769,12 +769,12 @@ static void parseOption(FFinstance* instance, FFdata* data, const char* key, con
}
else if(strcasecmp(key, "--print-config-system") == 0)
{
fputs(FASTFETCH_DATATEXT_CONFIG_SYSTEM, stdout);
puts(FASTFETCH_DATATEXT_CONFIG_SYSTEM);
exit(0);
}
else if(strcasecmp(key, "--print-config-user") == 0)
{
fputs(FASTFETCH_DATATEXT_CONFIG_USER, stdout);
puts(FASTFETCH_DATATEXT_CONFIG_USER);
exit(0);
}
else if(strcasecmp(key, "--print-structure") == 0)
@@ -784,7 +784,7 @@ static void parseOption(FFinstance* instance, FFdata* data, const char* key, con
}
else if(strcasecmp(key, "--list-modules") == 0)
{
fputs(FASTFETCH_DATATEXT_MODULES, stdout);
puts(FASTFETCH_DATATEXT_MODULES);
exit(0);
}
else if(strcasecmp(key, "--list-presets") == 0)
@@ -1464,18 +1464,14 @@ int main(int argc, const char** argv)
if(data.structure.length == 0)
ffStrbufAppendS(&data.structure, FASTFETCH_DATATEXT_STRUCTURE);
#define FF_CONTAINS_MODULE_NAME(moduleName)\
ffStrbufContainIgnCaseS(&data.structure, ":" #moduleName ":") ||\
ffStrbufStartsWithIgnCaseS(&data.structure, #moduleName ":") ||\
ffStrbufEndsWithIgnCaseS(&data.structure, ":" #moduleName)
if(FF_CONTAINS_MODULE_NAME(CPUUsage))
if(ffStrbufContainIgnCaseS(&data.structure, "CPUUsage"))
ffPrepareCPUUsage();
if(FF_CONTAINS_MODULE_NAME(PublicIp))
if(ffStrbufContainIgnCaseS(&data.structure, "PublicIp"))
ffPreparePublicIp(&instance);
if(FF_CONTAINS_MODULE_NAME(Weather))
if(ffStrbufContainIgnCaseS(&data.structure, "Weather"))
ffPrepareWeather(&instance);
#undef FF_CONTAINS_MODULE_NAME
ffStart(&instance);
+3
View File
@@ -184,6 +184,9 @@ static inline FF_C_NODISCARD uint32_t ffStrbufFirstIndexS(const FFstrbuf* strbuf
static inline FF_C_NODISCARD uint32_t ffStrbufLastIndexC(const FFstrbuf* strbuf, char c)
{
if(strbuf->length == 0)
return strbuf->length;
return ffStrbufPreviousIndexC(strbuf, strbuf->length - 1, c);
}