mirror of
https://git.jabber.space/devs/cproof.git
synced 2026-07-31 20:26:20 +00:00
Fix plugin command memleak
This commit is contained in:
@@ -591,7 +591,7 @@ prefs_set_autoxa_time(gint value)
|
|||||||
_save_prefs();
|
_save_prefs();
|
||||||
}
|
}
|
||||||
|
|
||||||
gchar **
|
gchar**
|
||||||
prefs_get_plugins(void)
|
prefs_get_plugins(void)
|
||||||
{
|
{
|
||||||
if (!g_key_file_has_group(prefs, "plugins")) {
|
if (!g_key_file_has_group(prefs, "plugins")) {
|
||||||
@@ -604,6 +604,12 @@ prefs_get_plugins(void)
|
|||||||
return g_key_file_get_string_list(prefs, "plugins", "load", NULL, NULL);
|
return g_key_file_get_string_list(prefs, "plugins", "load", NULL, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
prefs_free_plugins(gchar **plugins)
|
||||||
|
{
|
||||||
|
g_strfreev(plugins);
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
prefs_set_occupants_size(gint value)
|
prefs_set_occupants_size(gint value)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -184,6 +184,7 @@ gint prefs_get_autoxa_time(void);
|
|||||||
void prefs_set_autoxa_time(gint value);
|
void prefs_set_autoxa_time(gint value);
|
||||||
|
|
||||||
gchar** prefs_get_plugins(void);
|
gchar** prefs_get_plugins(void);
|
||||||
|
void prefs_free_plugins(gchar **plugins);
|
||||||
|
|
||||||
char prefs_get_otr_char(void);
|
char prefs_get_otr_char(void);
|
||||||
void prefs_set_otr_char(char ch);
|
void prefs_set_otr_char(char ch);
|
||||||
|
|||||||
@@ -92,13 +92,14 @@ plugins_run_command(const char * const input)
|
|||||||
gchar **args = parse_args(input, command->min_args, command->max_args, &result);
|
gchar **args = parse_args(input, command->min_args, command->max_args, &result);
|
||||||
if (result == FALSE) {
|
if (result == FALSE) {
|
||||||
ui_invalid_command_usage(command->usage, NULL);
|
ui_invalid_command_usage(command->usage, NULL);
|
||||||
|
g_strfreev(split);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
} else {
|
} else {
|
||||||
command->callback_func(command, args);
|
command->callback_func(command, args);
|
||||||
g_strfreev(split);
|
g_strfreev(split);
|
||||||
|
g_strfreev(args);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
g_strfreev(args);
|
|
||||||
}
|
}
|
||||||
p_command = g_slist_next(p_command);
|
p_command = g_slist_next(p_command);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -92,6 +92,7 @@ plugins_init(void)
|
|||||||
curr = g_slist_next(curr);
|
curr = g_slist_next(curr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
prefs_free_plugins(plugins_load);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user