From baa8992322f7350a13af4edebe131e08d022f185 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=80=9A=E6=B4=B2?= Date: Mon, 19 Jun 2023 16:07:23 +0800 Subject: [PATCH] Global: refactor `strcmp() == 0` to `ffStrEquals()` --- src/common/io/io_unix.c | 3 +- src/common/io/io_windows.c | 3 +- src/detection/battery/battery_linux.c | 3 +- src/detection/bluetooth/bluetooth_linux.c | 11 +- src/detection/brightness/brightness_linux.c | 3 +- .../displayserver/linux/displayserver_linux.c | 3 +- src/detection/displayserver/linux/wayland.c | 6 +- src/detection/displayserver/linux/wmde.c | 2 +- src/detection/host/host_apple.c | 232 +++++++++--------- src/detection/media/media_linux.c | 9 +- src/detection/os/os_apple.m | 1 + src/detection/packages/packages_linux.c | 2 +- src/detection/temps/temps_apple.c | 55 +++-- .../terminalfont/terminalfont_linux.c | 4 +- src/detection/terminalshell/terminalshell.c | 5 +- 15 files changed, 174 insertions(+), 168 deletions(-) diff --git a/src/common/io/io_unix.c b/src/common/io/io_unix.c index 8d506b05e..54e561190 100644 --- a/src/common/io/io_unix.c +++ b/src/common/io/io_unix.c @@ -1,4 +1,5 @@ #include "io.h" +#include "util/stringUtils.h" #include #include @@ -194,7 +195,7 @@ void listFilesRecursively(FFstrbuf* folder, uint8_t indentation, const char* fol { if(entry->d_type == DT_DIR) { - if(strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) + if(ffStrEquals(entry->d_name, ".") || ffStrEquals(entry->d_name, "..")) continue; ffStrbufAppendS(folder, entry->d_name); diff --git a/src/common/io/io_windows.c b/src/common/io/io_windows.c index 9a25a159a..f1f40a2b0 100644 --- a/src/common/io/io_windows.c +++ b/src/common/io/io_windows.c @@ -1,4 +1,5 @@ #include "io.h" +#include "util/stringUtils.h" static void createSubfolders(const char* fileName) { @@ -118,7 +119,7 @@ void listFilesRecursively(FFstrbuf* folder, uint8_t indentation, const char* fol { if (entry.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) { - if(strcmp(entry.cFileName, ".") == 0 || strcmp(entry.cFileName, "..") == 0) + if(ffStrEquals(entry.cFileName, ".") || ffStrEquals(entry.cFileName, "..")) continue; ffStrbufSubstrBefore(folder, folderLength); diff --git a/src/detection/battery/battery_linux.c b/src/detection/battery/battery_linux.c index 93f09faf1..bca7fbfdc 100644 --- a/src/detection/battery/battery_linux.c +++ b/src/detection/battery/battery_linux.c @@ -1,6 +1,7 @@ #include "fastfetch.h" #include "common/io/io.h" #include "battery.h" +#include "util/stringUtils.h" #include @@ -90,7 +91,7 @@ const char* ffDetectBattery(FF_MAYBE_UNUSED FFinstance* instance, FFBatteryOptio struct dirent* entry; while((entry = readdir(dirp)) != NULL) { - if(strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) + if(ffStrEquals(entry->d_name, ".") || ffStrEquals(entry->d_name, "..")) continue; ffStrbufAppendS(&baseDir, entry->d_name); diff --git a/src/detection/bluetooth/bluetooth_linux.c b/src/detection/bluetooth/bluetooth_linux.c index 229a82a42..f429387e1 100644 --- a/src/detection/bluetooth/bluetooth_linux.c +++ b/src/detection/bluetooth/bluetooth_linux.c @@ -1,4 +1,5 @@ #include "bluetooth.h" +#include "util/stringUtils.h" #ifdef FF_HAVE_DBUS #include "common/dbus.h" @@ -59,15 +60,15 @@ static void detectBluetoothValue(FFDBusData* dbus, DBusMessageIter* iter, FFBlue dbus->lib->ffdbus_message_iter_next(&dictIter); - if(strcmp(deviceProperty, "Address") == 0) + if(ffStrEquals(deviceProperty, "Address")) ffDBusGetValue(dbus, &dictIter, &device->address); - else if(strcmp(deviceProperty, "Name") == 0) + else if(ffStrEquals(deviceProperty, "Name")) ffDBusGetValue(dbus, &dictIter, &device->name); - else if(strcmp(deviceProperty, "Icon") == 0) + else if(ffStrEquals(deviceProperty, "Icon")) ffDBusGetValue(dbus, &dictIter, &device->type); - else if(strcmp(deviceProperty, "Percentage") == 0) + else if(ffStrEquals(deviceProperty, "Percentage")) ffDBusGetByte(dbus, &dictIter, &device->battery); - else if(strcmp(deviceProperty, "Connected") == 0) + else if(ffStrEquals(deviceProperty, "Connected")) ffDBusGetBool(dbus, &dictIter, &device->connected); } diff --git a/src/detection/brightness/brightness_linux.c b/src/detection/brightness/brightness_linux.c index ee78bcea8..fc4afd556 100644 --- a/src/detection/brightness/brightness_linux.c +++ b/src/detection/brightness/brightness_linux.c @@ -1,5 +1,6 @@ #include "brightness.h" #include "common/io/io.h" +#include "util/stringUtils.h" #include #include @@ -24,7 +25,7 @@ const char* ffDetectBrightness(FF_MAYBE_UNUSED FFlist* result) struct dirent* entry; while((entry = readdir(dirp)) != NULL) { - if(strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) + if(ffStrEquals(entry->d_name, ".") || ffStrEquals(entry->d_name, "..")) continue; ffStrbufAppendS(&backlightDir, entry->d_name); diff --git a/src/detection/displayserver/linux/displayserver_linux.c b/src/detection/displayserver/linux/displayserver_linux.c index 4d50184f4..5c2ca46ef 100644 --- a/src/detection/displayserver/linux/displayserver_linux.c +++ b/src/detection/displayserver/linux/displayserver_linux.c @@ -1,4 +1,5 @@ #include "displayserver_linux.h" +#include "util/stringUtils.h" #include @@ -18,7 +19,7 @@ static void parseDRM(FFDisplayServerResult* result) struct dirent* entry; while((entry = readdir(dirp)) != NULL) { - if(strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) + if(ffStrEquals(entry->d_name, ".") || ffStrEquals(entry->d_name, "..")) continue; ffStrbufAppendS(&drmDir, entry->d_name); diff --git a/src/detection/displayserver/linux/wayland.c b/src/detection/displayserver/linux/wayland.c index e58815c69..bb06661f1 100644 --- a/src/detection/displayserver/linux/wayland.c +++ b/src/detection/displayserver/linux/wayland.c @@ -92,9 +92,9 @@ static void waylandOutputGeometryListener(void *data, WaylandDisplay* display = data; display->transform = (enum wl_output_transform) transform; - if(make && strcmp(make, "unknown") != 0) + if(make && !ffStrEquals(make, "unknown")) ffStrbufAppendS(&display->name, make); - if(model && strcmp(model, "unknown") != 0) + if(model && !ffStrEquals(model, "unknown")) { if(display->name.length > 0) ffStrbufAppendC(&display->name, '-'); @@ -214,7 +214,7 @@ static void waylandGlobalAddListener(void* data, struct wl_registry* registry, u { WaylandData* wldata = data; - if(strcmp(interface, wldata->ffwl_output_interface->name) == 0) + if(ffStrEquals(interface, wldata->ffwl_output_interface->name)) waylandOutputHandler(wldata, registry, name, version); } diff --git a/src/detection/displayserver/linux/wmde.c b/src/detection/displayserver/linux/wmde.c index 67d8a5c27..1c404f4c5 100644 --- a/src/detection/displayserver/linux/wmde.c +++ b/src/detection/displayserver/linux/wmde.c @@ -144,7 +144,7 @@ static void getGnome(const FFinstance* instance, FFDisplayServerResult* result) { ffStrbufSetS(&result->deProcessName, "gnome-shell"); const char* sessionMode = getenv("GNOME_SHELL_SESSION_MODE"); - if (sessionMode && strcmp(sessionMode, "classic") == 0) + if (sessionMode && ffStrEquals(sessionMode, "classic")) ffStrbufSetS(&result->dePrettyName, FF_DE_PRETTY_GNOME_CLASSIC); else ffStrbufSetS(&result->dePrettyName, FF_DE_PRETTY_GNOME); diff --git a/src/detection/host/host_apple.c b/src/detection/host/host_apple.c index e906b67b8..d47ea8c44 100644 --- a/src/detection/host/host_apple.c +++ b/src/detection/host/host_apple.c @@ -1,10 +1,6 @@ #include "host.h" #include "common/sysctl.h" - -static inline bool strEqual(const char* a, const char* b) -{ - return strcmp(a, b) == 0; -} +#include "util/stringUtils.h" static const char* getProductName(const FFstrbuf* hwModel) { @@ -18,143 +14,143 @@ static const char* getProductName(const FFstrbuf* hwModel) if(ffStrbufStartsWithS(hwModel, "MacBookPro")) { const char* version = hwModel->chars + strlen("MacBookPro"); - if(strEqual(version, "18,3") || - strEqual(version, "18,4")) return "MacBook Pro (14-inch, 2021)"; - if(strEqual(version, "18,1") || - strEqual(version, "18,2")) return "MacBook Pro (16-inch, 2021)"; - if(strEqual(version, "17,1")) return "MacBook Pro (13-inch, M1, 2020)"; - if(strEqual(version, "16,4")) return "MacBook Pro (16-inch, 2019)"; - if(strEqual(version, "16,3")) return "MacBook Pro (13-inch, 2020, Two Thunderbolt 3 ports)"; - if(strEqual(version, "16,2")) return "MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports)"; - if(strEqual(version, "16,1")) return "MacBook Pro (16-inch, 2019)"; - if(strEqual(version, "15,4")) return "MacBook Pro (13-inch, 2019, Two Thunderbolt 3 ports)"; - if(strEqual(version, "15,3")) return "MacBook Pro (15-inch, 2019)"; - if(strEqual(version, "15,2")) return "MacBook Pro (13-inch, 2018/2019, Four Thunderbolt 3 ports)"; - if(strEqual(version, "15,1")) return "MacBook Pro (15-inch, 2018/2019)"; - if(strEqual(version, "14,3")) return "MacBook Pro (15-inch, 2017)"; - if(strEqual(version, "14,2")) return "MacBook Pro (13-inch, 2017, Four Thunderbolt 3 ports)"; - if(strEqual(version, "14,1")) return "MacBook Pro (13-inch, 2017, Two Thunderbolt 3 ports)"; - if(strEqual(version, "13,3")) return "MacBook Pro (15-inch, 2016)"; - if(strEqual(version, "13,2")) return "MacBook Pro (13-inch, 2016, Four Thunderbolt 3 ports)"; - if(strEqual(version, "13,1")) return "MacBook Pro (13-inch, 2016, Two Thunderbolt 3 ports)"; - if(strEqual(version, "12,1")) return "MacBook Pro (Retina, 13-inch, Early 2015)"; - if(strEqual(version, "11,4") || - strEqual(version, "11,5")) return "MacBook Pro (Retina, 15-inch, Mid 2015)"; - if(strEqual(version, "11,2") || - strEqual(version, "11,3")) return "MacBook Pro (Retina, 15-inch, Late 2013/Mid 2014)"; - if(strEqual(version, "11,1")) return "MacBook Pro (Retina, 13-inch, Late 2013/Mid 2014)"; - if(strEqual(version, "10,2")) return "MacBook Pro (Retina, 13-inch, Late 2012/Early 2013)"; - if(strEqual(version, "10,1")) return "MacBook Pro (Retina, 15-inch, Mid 2012/Early 2013)"; - if(strEqual(version, "9,2")) return "MacBook Pro (13-inch, Mid 2012)"; - if(strEqual(version, "9,1")) return "MacBook Pro (15-inch, Mid 2012)"; - if(strEqual(version, "8,3")) return "MacBook Pro (17-inch, 2011)"; - if(strEqual(version, "8,2")) return "MacBook Pro (15-inch, 2011)"; - if(strEqual(version, "8,1")) return "MacBook Pro (13-inch, 2011)"; - if(strEqual(version, "7,1")) return "MacBook Pro (13-inch, Mid 2010)"; - if(strEqual(version, "6,2")) return "MacBook Pro (15-inch, Mid 2010)"; - if(strEqual(version, "6,1")) return "MacBook Pro (17-inch, Mid 2010)"; - if(strEqual(version, "5,5")) return "MacBook Pro (13-inch, Mid 2009)"; - if(strEqual(version, "5,3")) return "MacBook Pro (15-inch, Mid 2009)"; - if(strEqual(version, "5,2")) return "MacBook Pro (17-inch, Mid/Early 2009)"; - if(strEqual(version, "5,1")) return "MacBook Pro (15-inch, Late 2008)"; - if(strEqual(version, "4,1")) return "MacBook Pro (17/15-inch, Early 2008)"; + if(ffStrEquals(version, "18,3") || + ffStrEquals(version, "18,4")) return "MacBook Pro (14-inch, 2021)"; + if(ffStrEquals(version, "18,1") || + ffStrEquals(version, "18,2")) return "MacBook Pro (16-inch, 2021)"; + if(ffStrEquals(version, "17,1")) return "MacBook Pro (13-inch, M1, 2020)"; + if(ffStrEquals(version, "16,4")) return "MacBook Pro (16-inch, 2019)"; + if(ffStrEquals(version, "16,3")) return "MacBook Pro (13-inch, 2020, Two Thunderbolt 3 ports)"; + if(ffStrEquals(version, "16,2")) return "MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports)"; + if(ffStrEquals(version, "16,1")) return "MacBook Pro (16-inch, 2019)"; + if(ffStrEquals(version, "15,4")) return "MacBook Pro (13-inch, 2019, Two Thunderbolt 3 ports)"; + if(ffStrEquals(version, "15,3")) return "MacBook Pro (15-inch, 2019)"; + if(ffStrEquals(version, "15,2")) return "MacBook Pro (13-inch, 2018/2019, Four Thunderbolt 3 ports)"; + if(ffStrEquals(version, "15,1")) return "MacBook Pro (15-inch, 2018/2019)"; + if(ffStrEquals(version, "14,3")) return "MacBook Pro (15-inch, 2017)"; + if(ffStrEquals(version, "14,2")) return "MacBook Pro (13-inch, 2017, Four Thunderbolt 3 ports)"; + if(ffStrEquals(version, "14,1")) return "MacBook Pro (13-inch, 2017, Two Thunderbolt 3 ports)"; + if(ffStrEquals(version, "13,3")) return "MacBook Pro (15-inch, 2016)"; + if(ffStrEquals(version, "13,2")) return "MacBook Pro (13-inch, 2016, Four Thunderbolt 3 ports)"; + if(ffStrEquals(version, "13,1")) return "MacBook Pro (13-inch, 2016, Two Thunderbolt 3 ports)"; + if(ffStrEquals(version, "12,1")) return "MacBook Pro (Retina, 13-inch, Early 2015)"; + if(ffStrEquals(version, "11,4") || + ffStrEquals(version, "11,5")) return "MacBook Pro (Retina, 15-inch, Mid 2015)"; + if(ffStrEquals(version, "11,2") || + ffStrEquals(version, "11,3")) return "MacBook Pro (Retina, 15-inch, Late 2013/Mid 2014)"; + if(ffStrEquals(version, "11,1")) return "MacBook Pro (Retina, 13-inch, Late 2013/Mid 2014)"; + if(ffStrEquals(version, "10,2")) return "MacBook Pro (Retina, 13-inch, Late 2012/Early 2013)"; + if(ffStrEquals(version, "10,1")) return "MacBook Pro (Retina, 15-inch, Mid 2012/Early 2013)"; + if(ffStrEquals(version, "9,2")) return "MacBook Pro (13-inch, Mid 2012)"; + if(ffStrEquals(version, "9,1")) return "MacBook Pro (15-inch, Mid 2012)"; + if(ffStrEquals(version, "8,3")) return "MacBook Pro (17-inch, 2011)"; + if(ffStrEquals(version, "8,2")) return "MacBook Pro (15-inch, 2011)"; + if(ffStrEquals(version, "8,1")) return "MacBook Pro (13-inch, 2011)"; + if(ffStrEquals(version, "7,1")) return "MacBook Pro (13-inch, Mid 2010)"; + if(ffStrEquals(version, "6,2")) return "MacBook Pro (15-inch, Mid 2010)"; + if(ffStrEquals(version, "6,1")) return "MacBook Pro (17-inch, Mid 2010)"; + if(ffStrEquals(version, "5,5")) return "MacBook Pro (13-inch, Mid 2009)"; + if(ffStrEquals(version, "5,3")) return "MacBook Pro (15-inch, Mid 2009)"; + if(ffStrEquals(version, "5,2")) return "MacBook Pro (17-inch, Mid/Early 2009)"; + if(ffStrEquals(version, "5,1")) return "MacBook Pro (15-inch, Late 2008)"; + if(ffStrEquals(version, "4,1")) return "MacBook Pro (17/15-inch, Early 2008)"; } else if(ffStrbufStartsWithS(hwModel, "MacBookAir")) { const char* version = hwModel->chars + strlen("MacBookAir"); - if(strEqual(version, "10,1")) return "MacBook Air (M1, 2020)"; - if(strEqual(version, "9,1")) return "MacBook Air (Retina, 13-inch, 2020)"; - if(strEqual(version, "8,2")) return "MacBook Air (Retina, 13-inch, 2019)"; - if(strEqual(version, "8,1")) return "MacBook Air (Retina, 13-inch, 2018)"; - if(strEqual(version, "7,2")) return "MacBook Air (13-inch, Early 2015/2017)"; - if(strEqual(version, "7,1")) return "MacBook Air (11-inch, Early 2015)"; - if(strEqual(version, "6,2")) return "MacBook Air (13-inch, Mid 2013/Early 2014)"; - if(strEqual(version, "6,1")) return "MacBook Air (11-inch, Mid 2013/Early 2014)"; - if(strEqual(version, "5,2")) return "MacBook Air (13-inch, Mid 2012)"; - if(strEqual(version, "5,1")) return "MacBook Air (11-inch, Mid 2012)"; - if(strEqual(version, "4,2")) return "MacBook Air (13-inch, Mid 2011)"; - if(strEqual(version, "4,1")) return "MacBook Air (11-inch, Mid 2011)"; - if(strEqual(version, "3,2")) return "MacBook Air (13-inch, Late 2010)"; - if(strEqual(version, "3,1")) return "MacBook Air (11-inch, Late 2010)"; - if(strEqual(version, "2,1")) return "MacBook Air (Mid 2009)"; + if(ffStrEquals(version, "10,1")) return "MacBook Air (M1, 2020)"; + if(ffStrEquals(version, "9,1")) return "MacBook Air (Retina, 13-inch, 2020)"; + if(ffStrEquals(version, "8,2")) return "MacBook Air (Retina, 13-inch, 2019)"; + if(ffStrEquals(version, "8,1")) return "MacBook Air (Retina, 13-inch, 2018)"; + if(ffStrEquals(version, "7,2")) return "MacBook Air (13-inch, Early 2015/2017)"; + if(ffStrEquals(version, "7,1")) return "MacBook Air (11-inch, Early 2015)"; + if(ffStrEquals(version, "6,2")) return "MacBook Air (13-inch, Mid 2013/Early 2014)"; + if(ffStrEquals(version, "6,1")) return "MacBook Air (11-inch, Mid 2013/Early 2014)"; + if(ffStrEquals(version, "5,2")) return "MacBook Air (13-inch, Mid 2012)"; + if(ffStrEquals(version, "5,1")) return "MacBook Air (11-inch, Mid 2012)"; + if(ffStrEquals(version, "4,2")) return "MacBook Air (13-inch, Mid 2011)"; + if(ffStrEquals(version, "4,1")) return "MacBook Air (11-inch, Mid 2011)"; + if(ffStrEquals(version, "3,2")) return "MacBook Air (13-inch, Late 2010)"; + if(ffStrEquals(version, "3,1")) return "MacBook Air (11-inch, Late 2010)"; + if(ffStrEquals(version, "2,1")) return "MacBook Air (Mid 2009)"; } else if(ffStrbufStartsWithS(hwModel, "Macmini")) { const char* version = hwModel->chars + strlen("Macmini"); - if(strEqual(version, "9,1")) return "Mac mini (M1, 2020)"; - if(strEqual(version, "8,1")) return "Mac mini (2018)"; - if(strEqual(version, "7,1")) return "Mac mini (Mid 2014)"; - if(strEqual(version, "6,1") || - strEqual(version, "6,2")) return "Mac mini (Late 2012)"; - if(strEqual(version, "5,1") || - strEqual(version, "5,2")) return "Mac mini (Mid 2011)"; - if(strEqual(version, "4,1")) return "Mac mini (Mid 2010)"; - if(strEqual(version, "3,1")) return "Mac mini (Early/Late 2009)"; + if(ffStrEquals(version, "9,1")) return "Mac mini (M1, 2020)"; + if(ffStrEquals(version, "8,1")) return "Mac mini (2018)"; + if(ffStrEquals(version, "7,1")) return "Mac mini (Mid 2014)"; + if(ffStrEquals(version, "6,1") || + ffStrEquals(version, "6,2")) return "Mac mini (Late 2012)"; + if(ffStrEquals(version, "5,1") || + ffStrEquals(version, "5,2")) return "Mac mini (Mid 2011)"; + if(ffStrEquals(version, "4,1")) return "Mac mini (Mid 2010)"; + if(ffStrEquals(version, "3,1")) return "Mac mini (Early/Late 2009)"; } else if(ffStrbufStartsWithS(hwModel, "MacBook")) { const char* version = hwModel->chars + strlen("MacBook"); - if(strEqual(version, "10,1")) return "MacBook (Retina, 12-inch, 2017)"; - if(strEqual(version, "9,1")) return "MacBook (Retina, 12-inch, Early 2016)"; - if(strEqual(version, "8,1")) return "MacBook (Retina, 12-inch, Early 2015)"; - if(strEqual(version, "7,1")) return "MacBook (13-inch, Mid 2010)"; - if(strEqual(version, "6,1")) return "MacBook (13-inch, Late 2009)"; - if(strEqual(version, "5,2")) return "MacBook (13-inch, Early/Mid 2009)"; + if(ffStrEquals(version, "10,1")) return "MacBook (Retina, 12-inch, 2017)"; + if(ffStrEquals(version, "9,1")) return "MacBook (Retina, 12-inch, Early 2016)"; + if(ffStrEquals(version, "8,1")) return "MacBook (Retina, 12-inch, Early 2015)"; + if(ffStrEquals(version, "7,1")) return "MacBook (13-inch, Mid 2010)"; + if(ffStrEquals(version, "6,1")) return "MacBook (13-inch, Late 2009)"; + if(ffStrEquals(version, "5,2")) return "MacBook (13-inch, Early/Mid 2009)"; } else if(ffStrbufStartsWithS(hwModel, "MacPro")) { const char* version = hwModel->chars + strlen("MacPro"); - if(strEqual(version, "7,1")) return "Mac Pro (2019)"; - if(strEqual(version, "6,1")) return "Mac Pro (Late 2013)"; - if(strEqual(version, "5,1")) return "Mac Pro (Mid 2010 - Mid 2012)"; - if(strEqual(version, "4,1")) return "Mac Pro (Early 2009)"; + if(ffStrEquals(version, "7,1")) return "Mac Pro (2019)"; + if(ffStrEquals(version, "6,1")) return "Mac Pro (Late 2013)"; + if(ffStrEquals(version, "5,1")) return "Mac Pro (Mid 2010 - Mid 2012)"; + if(ffStrEquals(version, "4,1")) return "Mac Pro (Early 2009)"; } else if(ffStrbufStartsWithS(hwModel, "Mac")) { const char* version = hwModel->chars + strlen("Mac"); - if(strEqual(version, "14,15")) return "MacBook Air (15-inch, M2, 2023)"; - if(strEqual(version, "14,14")) return "Mac Studio (M2 Max, 2023, Two USB-C front ports)"; - if(strEqual(version, "14,13")) return "Mac Studio (M2 Ultra, 2023, Two Thunderbolt 4 front ports)"; - if(strEqual(version, "14,8")) return "Mac Pro (2023)"; - if(strEqual(version, "14,6") || - strEqual(version, "14,10")) return "MacBook Pro (16-inch, 2023)"; - if(strEqual(version, "14,5") || - strEqual(version, "14,9")) return "MacBook Pro (14-inch, 2023)"; - if(strEqual(version, "14,3")) return "Mac mini (M2, 2023, Two Thunderbolt 4 ports)"; - if(strEqual(version, "14,12")) return "Mac mini (M2, 2023, Four Thunderbolt 4 ports)"; - if(strEqual(version, "14,7")) return "MacBook Pro (13-inch, M2, 2022)"; - if(strEqual(version, "14,2")) return "MacBook Air (M2, 2022)"; - if(strEqual(version, "13,1")) return "Mac Studio (M1 Max, 2022, Two USB-C front ports)"; - if(strEqual(version, "13,2")) return "Mac Studio (M1 Ultra, 2022, Two Thunderbolt 4 front ports)"; + if(ffStrEquals(version, "14,15")) return "MacBook Air (15-inch, M2, 2023)"; + if(ffStrEquals(version, "14,14")) return "Mac Studio (M2 Max, 2023, Two USB-C front ports)"; + if(ffStrEquals(version, "14,13")) return "Mac Studio (M2 Ultra, 2023, Two Thunderbolt 4 front ports)"; + if(ffStrEquals(version, "14,8")) return "Mac Pro (2023)"; + if(ffStrEquals(version, "14,6") || + ffStrEquals(version, "14,10")) return "MacBook Pro (16-inch, 2023)"; + if(ffStrEquals(version, "14,5") || + ffStrEquals(version, "14,9")) return "MacBook Pro (14-inch, 2023)"; + if(ffStrEquals(version, "14,3")) return "Mac mini (M2, 2023, Two Thunderbolt 4 ports)"; + if(ffStrEquals(version, "14,12")) return "Mac mini (M2, 2023, Four Thunderbolt 4 ports)"; + if(ffStrEquals(version, "14,7")) return "MacBook Pro (13-inch, M2, 2022)"; + if(ffStrEquals(version, "14,2")) return "MacBook Air (M2, 2022)"; + if(ffStrEquals(version, "13,1")) return "Mac Studio (M1 Max, 2022, Two USB-C front ports)"; + if(ffStrEquals(version, "13,2")) return "Mac Studio (M1 Ultra, 2022, Two Thunderbolt 4 front ports)"; } else if(ffStrbufStartsWithS(hwModel, "iMac")) { const char* version = hwModel->chars + strlen("iMac"); - if(strEqual(version, "21,1")) return "iMac (24-inch, M1, 2021, Two Thunderbolt / USB 4 ports, Two USB 3 ports)"; - if(strEqual(version, "21,2")) return "iMac (24-inch, M1, 2021, Two Thunderbolt / USB 4 ports)"; - if(strEqual(version, "20,1") || - strEqual(version, "20,2")) return "iMac (Retina 5K, 27-inch, 2020)"; - if(strEqual(version, "19,1")) return "iMac (Retina 5K, 27-inch, 2019)"; - if(strEqual(version, "19,2")) return "iMac (Retina 4K, 21.5-inch, 2019)"; - if(strEqual(version, "Pro1,1")) return "iMac Pro (2017)"; - if(strEqual(version, "18,3")) return "iMac (Retina 5K, 27-inch, 2017)"; - if(strEqual(version, "18,2")) return "iMac (Retina 4K, 21.5-inch, 2017)"; - if(strEqual(version, "18,1")) return "iMac (21.5-inch, 2017)"; - if(strEqual(version, "17,1")) return "iMac (Retina 5K, 27-inch, Late 2015)"; - if(strEqual(version, "16,2")) return "iMac (Retina 4K, 21.5-inch, Late 2015)"; - if(strEqual(version, "16,1")) return "iMac (21.5-inch, Late 2015)"; - if(strEqual(version, "15,1")) return "iMac (Retina 5K, 27-inch, Late 2014 - Mid 2015)"; - if(strEqual(version, "14,4")) return "iMac (21.5-inch, Mid 2014)"; - if(strEqual(version, "14,2")) return "iMac (27-inch, Late 2013)"; - if(strEqual(version, "14,1")) return "iMac (21.5-inch, Late 2013)"; - if(strEqual(version, "13,2")) return "iMac (27-inch, Late 2012)"; - if(strEqual(version, "13,1")) return "iMac (21.5-inch, Late 2012)"; - if(strEqual(version, "12,2")) return "iMac (27-inch, Mid 2011)"; - if(strEqual(version, "12,1")) return "iMac (21.5-inch, Mid 2011)"; - if(strEqual(version, "11,3")) return "iMac (27-inch, Mid 2010)"; - if(strEqual(version, "11,2")) return "iMac (21.5-inch, Mid 2010)"; - if(strEqual(version, "10,1")) return "iMac (27/21.5-inch, Late 2009)"; - if(strEqual(version, "9,1")) return "iMac (24/20-inch, Early 2009)"; + if(ffStrEquals(version, "21,1")) return "iMac (24-inch, M1, 2021, Two Thunderbolt / USB 4 ports, Two USB 3 ports)"; + if(ffStrEquals(version, "21,2")) return "iMac (24-inch, M1, 2021, Two Thunderbolt / USB 4 ports)"; + if(ffStrEquals(version, "20,1") || + ffStrEquals(version, "20,2")) return "iMac (Retina 5K, 27-inch, 2020)"; + if(ffStrEquals(version, "19,1")) return "iMac (Retina 5K, 27-inch, 2019)"; + if(ffStrEquals(version, "19,2")) return "iMac (Retina 4K, 21.5-inch, 2019)"; + if(ffStrEquals(version, "Pro1,1")) return "iMac Pro (2017)"; + if(ffStrEquals(version, "18,3")) return "iMac (Retina 5K, 27-inch, 2017)"; + if(ffStrEquals(version, "18,2")) return "iMac (Retina 4K, 21.5-inch, 2017)"; + if(ffStrEquals(version, "18,1")) return "iMac (21.5-inch, 2017)"; + if(ffStrEquals(version, "17,1")) return "iMac (Retina 5K, 27-inch, Late 2015)"; + if(ffStrEquals(version, "16,2")) return "iMac (Retina 4K, 21.5-inch, Late 2015)"; + if(ffStrEquals(version, "16,1")) return "iMac (21.5-inch, Late 2015)"; + if(ffStrEquals(version, "15,1")) return "iMac (Retina 5K, 27-inch, Late 2014 - Mid 2015)"; + if(ffStrEquals(version, "14,4")) return "iMac (21.5-inch, Mid 2014)"; + if(ffStrEquals(version, "14,2")) return "iMac (27-inch, Late 2013)"; + if(ffStrEquals(version, "14,1")) return "iMac (21.5-inch, Late 2013)"; + if(ffStrEquals(version, "13,2")) return "iMac (27-inch, Late 2012)"; + if(ffStrEquals(version, "13,1")) return "iMac (21.5-inch, Late 2012)"; + if(ffStrEquals(version, "12,2")) return "iMac (27-inch, Mid 2011)"; + if(ffStrEquals(version, "12,1")) return "iMac (21.5-inch, Mid 2011)"; + if(ffStrEquals(version, "11,3")) return "iMac (27-inch, Mid 2010)"; + if(ffStrEquals(version, "11,2")) return "iMac (21.5-inch, Mid 2010)"; + if(ffStrEquals(version, "10,1")) return "iMac (27/21.5-inch, Late 2009)"; + if(ffStrEquals(version, "9,1")) return "iMac (24/20-inch, Early 2009)"; } return hwModel->chars; } diff --git a/src/detection/media/media_linux.c b/src/detection/media/media_linux.c index 7ca21d30a..9eb92bf73 100644 --- a/src/detection/media/media_linux.c +++ b/src/detection/media/media_linux.c @@ -1,6 +1,7 @@ #include "fastfetch.h" #include "detection/media/media.h" #include "common/thread.h" +#include "util/stringUtils.h" #include @@ -61,13 +62,13 @@ static bool getBusProperties(FFDBusData* data, const char* busName, FFMediaResul data->lib->ffdbus_message_iter_next(&dictIterator); - if(strcmp(key, "xesam:title") == 0) + if(ffStrEquals(key, "xesam:title")) ffDBusGetValue(data, &dictIterator, &result->song); - else if(strcmp(key, "xesam:album") == 0) + else if(ffStrEquals(key, "xesam:album")) ffDBusGetValue(data, &dictIterator, &result->album); - else if(strcmp(key, "xesam:artist") == 0) + else if(ffStrEquals(key, "xesam:artist")) ffDBusGetValue(data, &dictIterator, &result->artist); - else if(strcmp(key, "xesam:url") == 0) + else if(ffStrEquals(key, "xesam:url")) ffDBusGetValue(data, &dictIterator, &result->url); if(result->song.length > 0 && result->artist.length > 0 && result->album.length > 0 && result->url.length > 0) diff --git a/src/detection/os/os_apple.m b/src/detection/os/os_apple.m index 190c1482b..dac09ddcd 100644 --- a/src/detection/os/os_apple.m +++ b/src/detection/os/os_apple.m @@ -1,5 +1,6 @@ #include "os.h" #include "common/sysctl.h" +#include "util/stringUtils.h" #include #include diff --git a/src/detection/packages/packages_linux.c b/src/detection/packages/packages_linux.c index b20c9177f..3fc5c9816 100644 --- a/src/detection/packages/packages_linux.c +++ b/src/detection/packages/packages_linux.c @@ -309,7 +309,7 @@ static void getPackageCountsBedrock(const FFinstance* instance, FFstrbuf* baseDi { if(entry->d_type != DT_DIR) continue; - if(strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) + if(ffStrEquals(entry->d_name, ".") || ffStrEquals(entry->d_name, "..")) continue; ffStrbufAppendS(baseDir, entry->d_name); diff --git a/src/detection/temps/temps_apple.c b/src/detection/temps/temps_apple.c index 041e1418e..02ed59d7e 100644 --- a/src/detection/temps/temps_apple.c +++ b/src/detection/temps/temps_apple.c @@ -1,5 +1,6 @@ #include "fastfetch.h" #include "temps_apple.h" +#include "util/stringUtils.h" #include #include @@ -198,108 +199,108 @@ static const char *smcReadValue(io_connect_t conn, const UInt32Char_t key, doubl if (val.dataSize == 0) return "Empty SMC result"; - if (strcmp(val.dataType, kDataTypeUi8) == 0 || - strcmp(val.dataType, kDataTypeUi16) == 0 || - strcmp(val.dataType, kDataTypeUi32) == 0 || - strcmp(val.dataType, kDataTypeUi64) == 0) + if (ffStrEquals(val.dataType, kDataTypeUi8) || + ffStrEquals(val.dataType, kDataTypeUi16) || + ffStrEquals(val.dataType, kDataTypeUi32) || + ffStrEquals(val.dataType, kDataTypeUi64)) { uint64_t tmp = 0; for (uint32_t i = 0; i < val.dataSize; i++) tmp += (uint64_t)((uint8_t)(val.bytes[i]) * pow(256, val.dataSize - 1 - i)); *value = (double)tmp; } - else if (strcmp(val.dataType, kDataTypeFlt) == 0) + else if (ffStrEquals(val.dataType, kDataTypeFlt)) { *value = *(float *)(val.bytes); } - else if (strcmp(val.dataType, kDataTypeFp1f) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeFp1f) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 32768.0; } - else if (strcmp(val.dataType, kDataTypeFp4c) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeFp4c) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 4096.0; } - else if (strcmp(val.dataType, kDataTypeFp5b) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeFp5b) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 2048.0; } - else if (strcmp(val.dataType, kDataTypeFp6a) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeFp6a) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 1024.0; } - else if (strcmp(val.dataType, kDataTypeFp79) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeFp79) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 512.0; } - else if (strcmp(val.dataType, kDataTypeFp88) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeFp88) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 256.0; } - else if (strcmp(val.dataType, kDataTypeFpa6) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeFpa6) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 64.0; } - else if (strcmp(val.dataType, kDataTypeFpc4) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeFpc4) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 16.0; } - else if (strcmp(val.dataType, kDataTypeFpe2) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeFpe2) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 4.0; } - else if (strcmp(val.dataType, kDataTypeSp1e) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSp1e) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 16384.0; } - else if (strcmp(val.dataType, kDataTypeSp3c) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSp3c) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 4096.0; } - else if (strcmp(val.dataType, kDataTypeSp4b) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSp4b) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 2048.0; } - else if (strcmp(val.dataType, kDataTypeSp5a) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSp5a) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 1024.0; } - else if (strcmp(val.dataType, kDataTypeSp69) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSp69) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 512.0; } - else if (strcmp(val.dataType, kDataTypeSp78) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSp78) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 256.0; } - else if (strcmp(val.dataType, kDataTypeSp87) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSp87) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 128.0; } - else if (strcmp(val.dataType, kDataTypeSp96) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSp96) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 64.0; } - else if (strcmp(val.dataType, kDataTypeSpb4) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSpb4) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 16.0; } - else if (strcmp(val.dataType, kDataTypeSpf0) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSpf0) && val.dataSize == 2) { *value = ntohs(*(uint16_t *)(val.bytes)) / 1.0; } - else if (strcmp(val.dataType, kDataTypeSi8) == 0 && val.dataSize == 1) + else if (ffStrEquals(val.dataType, kDataTypeSi8) && val.dataSize == 1) { signed char *bytes = (signed char *)val.bytes; int16_t temp = 0; temp += (int8_t)(bytes[0]); *value = temp; } - else if (strcmp(val.dataType, kDataTypeSi16) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypeSi16) && val.dataSize == 2) { *value = ntohs(*(int16_t *)(val.bytes)); } - else if (strcmp(val.dataType, kDataTypePwm) == 0 && val.dataSize == 2) + else if (ffStrEquals(val.dataType, kDataTypePwm) && val.dataSize == 2) { *value = (double)ntohs(*(uint16_t *)(val.bytes)) * 100 / 65536.0; } diff --git a/src/detection/terminalfont/terminalfont_linux.c b/src/detection/terminalfont/terminalfont_linux.c index 1a32692cb..869add82d 100644 --- a/src/detection/terminalfont/terminalfont_linux.c +++ b/src/detection/terminalfont/terminalfont_linux.c @@ -138,13 +138,13 @@ static void detectDeepinTerminal(const FFinstance* instance, FFTerminalFontResul for(int count = 0; getline(&line, &len, file) != -1 && count < 2;) { - if(strcmp(line, "[basic.interface.font]\n") == 0) + if(ffStrEquals(line, "[basic.interface.font]\n")) { if(getline(&line, &len, file) != -1) ffParsePropLine(line, "value=", &fontName); ++count; } - else if(strcmp(line, "[basic.interface.font_size]\n") == 0) + else if(ffStrEquals(line, "[basic.interface.font_size]\n")) { if(getline(&line, &len, file) != -1) ffParsePropLine(line, "value=", &fontSize); diff --git a/src/detection/terminalshell/terminalshell.c b/src/detection/terminalshell/terminalshell.c index b7497b775..8651ac893 100644 --- a/src/detection/terminalshell/terminalshell.c +++ b/src/detection/terminalshell/terminalshell.c @@ -2,6 +2,7 @@ #include "common/io/io.h" #include "common/processing.h" #include "common/properties.h" +#include "util/stringUtils.h" #ifdef _WIN32 @@ -305,8 +306,8 @@ bool fftsGetTerminalVersion(FFstrbuf* processName, FF_MAYBE_UNUSED FFstrbuf* exe if(termProgram) { if(ffStrbufStartsWithIgnCaseS(processName, termProgram) || // processName ends with `.exe` on Windows - (strcmp(termProgram, "vscode") == 0 && ffStrbufStartsWithIgnCaseS(processName, "code")) || - (strcmp(termProgram, "iTerm.app") == 0 && ffStrbufStartsWithIgnCaseS(processName, "iTermServer-")) + (ffStrEquals(termProgram, "vscode") && ffStrbufStartsWithIgnCaseS(processName, "code")) || + (ffStrEquals(termProgram, "iTerm.app") && ffStrbufStartsWithIgnCaseS(processName, "iTermServer-")) ) { ffStrbufSetS(version, termProgramVersion); return true;