mirror of
https://github.com/weechat/weechat.git
synced 2026-06-26 21:06:38 +02:00
Fix 14 memory leaks (in core, gui, irc, jabber, logger, script plugins)
This commit is contained in:
@@ -652,6 +652,8 @@ irc_server_free_data (struct t_irc_server *server)
|
||||
if (server->options[i])
|
||||
weechat_config_option_free (server->options[i]);
|
||||
}
|
||||
if (server->name)
|
||||
free (server->name);
|
||||
if (server->addresses_array)
|
||||
weechat_string_free_exploded (server->addresses_array);
|
||||
if (server->ports_array)
|
||||
|
||||
@@ -1344,6 +1344,8 @@ jabber_server_free_data (struct t_jabber_server *server)
|
||||
if (server->options[i])
|
||||
weechat_config_option_free (server->options[i]);
|
||||
}
|
||||
if (server->name)
|
||||
free (server->name);
|
||||
if (server->address)
|
||||
free (server->address);
|
||||
if (server->current_ip)
|
||||
|
||||
@@ -183,6 +183,8 @@ logger_buffer_free (struct t_logger_buffer *logger_buffer)
|
||||
if (logger_buffer->log_filename)
|
||||
free (logger_buffer->log_filename);
|
||||
|
||||
free (logger_buffer);
|
||||
|
||||
logger_buffers = new_logger_buffers;
|
||||
}
|
||||
|
||||
|
||||
@@ -307,6 +307,7 @@ logger_get_filename (struct t_gui_buffer *buffer)
|
||||
free (log_path);
|
||||
if (log_path2)
|
||||
free (log_path2);
|
||||
free (mask_decoded);
|
||||
|
||||
return res;
|
||||
}
|
||||
@@ -487,12 +488,9 @@ logger_stop (struct t_logger_buffer *logger_buffer, int write_info_line)
|
||||
void
|
||||
logger_stop_all ()
|
||||
{
|
||||
struct t_logger_buffer *ptr_logger_buffer;
|
||||
|
||||
for (ptr_logger_buffer = logger_buffers; ptr_logger_buffer;
|
||||
ptr_logger_buffer = ptr_logger_buffer->next_buffer)
|
||||
while (logger_buffers)
|
||||
{
|
||||
logger_stop (ptr_logger_buffer, 1);
|
||||
logger_stop (logger_buffers, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -766,11 +764,12 @@ logger_backlog (struct t_gui_buffer *buffer, const char *filename, int lines)
|
||||
pos_message = strchr (ptr_lines->data, '\t');
|
||||
if (pos_message)
|
||||
{
|
||||
memset (&tm_line, 0, sizeof (struct tm));
|
||||
pos_message[0] = '\0';
|
||||
error = strptime (ptr_lines->data,
|
||||
weechat_config_string (logger_config_file_time_format),
|
||||
&tm_line);
|
||||
if (error && !error[0])
|
||||
if (error && !error[0] && (tm_line.tm_year > 0))
|
||||
datetime = mktime (&tm_line);
|
||||
pos_message[0] = '\t';
|
||||
}
|
||||
|
||||
@@ -500,10 +500,14 @@ script_remove (struct t_weechat_plugin *weechat_plugin,
|
||||
free (script->filename);
|
||||
if (script->name)
|
||||
free (script->name);
|
||||
if (script->description)
|
||||
free (script->description);
|
||||
if (script->author)
|
||||
free (script->author);
|
||||
if (script->version)
|
||||
free (script->version);
|
||||
if (script->license)
|
||||
free (script->license);
|
||||
if (script->description)
|
||||
free (script->description);
|
||||
if (script->shutdown_func)
|
||||
free (script->shutdown_func);
|
||||
if (script->charset)
|
||||
|
||||
Reference in New Issue
Block a user