summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Helleu <flashcode@flashtux.org>2011-05-26 16:34:54 +0200
committerSebastien Helleu <flashcode@flashtux.org>2011-05-26 16:34:54 +0200
commit92b88e659970cc9a350e4c71e0524def1342f98f (patch)
tree8e96bd3bab9b545ab4cb50e0a23aae4b74257acb
parentd99fe2babd63e8370f9528c1ec532785cd48af44 (diff)
downloadweechat-92b88e659970cc9a350e4c71e0524def1342f98f.zip
relay: fix memory leak on plugin load (free raw messages)
-rw-r--r--ChangeLog3
-rw-r--r--src/plugins/relay/relay.c7
2 files changed, 7 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index db815ea59..4079d3041 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -11,10 +11,11 @@ Version 0.3.6 (under dev!)
/window scroll_horiz) (task #11112)
* api: fix bug with function config_set_desc_plugin (use immediately
description for option when function is called)
+* irc: fix memory leak on plugin unload (free ignores)
* irc: fix memory leak in message parser (when called from other plugins like
relay) (bug #33387)
-* irc: fix memory leak on plugin unload (free ignores)
* relay: fix memory leak (free some parsed messages) (bug #33387)
+* relay: fix memory leak on plugin load (free raw messages)
* logger: add option logger.file.flush_delay (task #11118)
Version 0.3.5 (2011-05-15)
diff --git a/src/plugins/relay/relay.c b/src/plugins/relay/relay.c
index 07c293123..d89d55f00 100644
--- a/src/plugins/relay/relay.c
+++ b/src/plugins/relay/relay.c
@@ -31,6 +31,7 @@
#include "relay-completion.h"
#include "relay-config.h"
#include "relay-info.h"
+#include "relay-raw.h"
#include "relay-server.h"
#include "relay-upgrade.h"
@@ -192,13 +193,15 @@ weechat_plugin_end (struct t_weechat_plugin *plugin)
relay_upgrade_save ();
else
{
- /* remove all servers */
+ relay_raw_message_free_all ();
+
relay_server_free_all ();
- /* remove all clients */
relay_client_disconnect_all ();
+
if (relay_buffer)
weechat_buffer_close (relay_buffer);
+
relay_client_free_all ();
}