mirror of
https://github.com/fastfetch-cli/fastfetch.git
synced 2026-10-30 09:33:39 +01:00
Global: fix memleaks
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
#include "detection/gtk_qt/gtk_qt.h"
|
||||
#include "detection/displayserver/displayserver.h"
|
||||
#include "util/stringUtils.h"
|
||||
#include "util/mallocHelper.h"
|
||||
|
||||
static bool detectWMThemeFromConfigFile(const char* configFile, const char* themeRegex, const char* defaultValue, FFstrbuf* themeOrError)
|
||||
{
|
||||
@@ -91,8 +92,8 @@ static bool detectMutter(FFstrbuf* themeOrError)
|
||||
|
||||
static bool detectMuffin(FFstrbuf* themeOrError)
|
||||
{
|
||||
const char* name = ffSettingsGet("/org/cinnamon/theme/name", "org.cinnamon.theme", NULL, "name", FF_VARIANT_TYPE_STRING).strValue;
|
||||
const char* theme = ffSettingsGet("/org/cinnamon/desktop/wm/preferences/theme", "org.cinnamon.desktop.wm.preferences", NULL, "theme", FF_VARIANT_TYPE_STRING).strValue;
|
||||
FF_AUTO_FREE const char* name = ffSettingsGet("/org/cinnamon/theme/name", "org.cinnamon.theme", NULL, "name", FF_VARIANT_TYPE_STRING).strValue;
|
||||
FF_AUTO_FREE const char* theme = ffSettingsGet("/org/cinnamon/desktop/wm/preferences/theme", "org.cinnamon.desktop.wm.preferences", NULL, "theme", FF_VARIANT_TYPE_STRING).strValue;
|
||||
|
||||
if(name == NULL && theme == NULL)
|
||||
{
|
||||
@@ -133,7 +134,7 @@ static bool detectXFWM4(FFstrbuf* themeOrError)
|
||||
static bool detectOpenbox(const FFstrbuf* dePrettyName, FFstrbuf* themeOrError)
|
||||
{
|
||||
FF_STRBUF_AUTO_DESTROY absolutePath = ffStrbufCreateA(64);
|
||||
const char *configFileSubpath = "openbox/rc.xml";
|
||||
const char *configFileSubpath = "openbox/rc.xml";
|
||||
if (ffStrbufIgnCaseCompS(dePrettyName, "LXQt") == 0)
|
||||
configFileSubpath = "openbox/lxqt-rc.xml";
|
||||
else if (ffStrbufIgnCaseCompS(dePrettyName, "LXDE") == 0)
|
||||
|
||||
@@ -40,6 +40,9 @@ void ffPrintIcons(FFIconsOptions* options)
|
||||
{FF_FORMAT_ARG_TYPE_STRBUF, &result.icons2, "icons2"},
|
||||
}));
|
||||
}
|
||||
|
||||
ffStrbufDestroy(&result.icons1);
|
||||
ffStrbufDestroy(&result.icons2);
|
||||
}
|
||||
|
||||
bool ffParseIconsCommandOptions(FFIconsOptions* options, const char* key, const char* value)
|
||||
@@ -94,6 +97,9 @@ void ffGenerateIconsJsonResult(FF_MAYBE_UNUSED FFIconsOptions* options, yyjson_m
|
||||
yyjson_mut_val* icons = yyjson_mut_obj_add_obj(doc, module, "result");
|
||||
yyjson_mut_obj_add_strbuf(doc, icons, "icons1", &result.icons1);
|
||||
yyjson_mut_obj_add_strbuf(doc, icons, "icons2", &result.icons2);
|
||||
|
||||
ffStrbufDestroy(&result.icons1);
|
||||
ffStrbufDestroy(&result.icons2);
|
||||
}
|
||||
|
||||
void ffPrintIconsHelpFormat(void)
|
||||
|
||||
@@ -40,6 +40,9 @@ void ffPrintTheme(FFThemeOptions* options)
|
||||
{FF_FORMAT_ARG_TYPE_STRBUF, &result.theme2, "theme2"},
|
||||
}));
|
||||
}
|
||||
|
||||
ffStrbufDestroy(&result.theme1);
|
||||
ffStrbufDestroy(&result.theme2);
|
||||
}
|
||||
|
||||
bool ffParseThemeCommandOptions(FFThemeOptions* options, const char* key, const char* value)
|
||||
@@ -94,6 +97,9 @@ void ffGenerateThemeJsonResult(FF_MAYBE_UNUSED FFThemeOptions* options, yyjson_m
|
||||
yyjson_mut_val* theme = yyjson_mut_obj_add_obj(doc, module, "result");
|
||||
yyjson_mut_obj_add_strbuf(doc, theme, "theme1", &result.theme1);
|
||||
yyjson_mut_obj_add_strbuf(doc, theme, "theme2", &result.theme2);
|
||||
|
||||
ffStrbufDestroy(&result.theme1);
|
||||
ffStrbufDestroy(&result.theme2);
|
||||
}
|
||||
|
||||
void ffPrintThemeHelpFormat(void)
|
||||
|
||||
Reference in New Issue
Block a user