From 96940af8c3081631e9834840916a477c2df3351c Mon Sep 17 00:00:00 2001 From: Sebastien Helleu Date: Mon, 21 Nov 2011 18:12:47 +0100 Subject: [PATCH] irc: do not delete servers added in irc.conf on /reload (bug #34872) --- ChangeLog | 3 ++- src/plugins/irc/irc-config.c | 8 +++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1bb0f55fc..609db7c26 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,7 @@ WeeChat ChangeLog ================= Sébastien Helleu -v0.3.7-dev, 2011-11-19 +v0.3.7-dev, 2011-11-21 Version 0.3.7 (under dev!) @@ -31,6 +31,7 @@ Version 0.3.7 (under dev!) * core: enable background process under Cygwin to connect to servers, fix reconnection problem (bug #34626) * api: add new functions strcasecmp_range and strncasecmp_range +* irc: do not delete servers added in irc.conf on /reload (bug #34872) * irc: remove autorejoin on channels when disconnected from server (bug #32207) * irc: display messages kick/kill/mode/topic even if nick is ignored (bug #34853) diff --git a/src/plugins/irc/irc-config.c b/src/plugins/irc/irc-config.c index 4f2ba8007..f00ec90e5 100644 --- a/src/plugins/irc/irc-config.c +++ b/src/plugins/irc/irc-config.c @@ -1022,7 +1022,13 @@ irc_config_reload (void *data, struct t_config_file *config_file) { next_server = ptr_server->next_server; - if (!ptr_server->reloaded_from_config) + /* + * if server existed before reload, but was not read in irc.conf: + * - if connected to server: display a warning, keep server in memory + * - if not connected: delete server + */ + if (ptr_server->reloading_from_config + && !ptr_server->reloaded_from_config) { if (ptr_server->is_connected) {