summaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
authorSébastien Helleu <flashcode@flashtux.org>2017-01-06 22:44:13 +0100
committerSébastien Helleu <flashcode@flashtux.org>2017-01-06 22:44:13 +0100
commitfe7f92c4d8fbeac3257ac36af8491bce3dc32033 (patch)
treee9c0f2bc8319ab6f7c7b488fc79baeb9ba8ebcad /src/plugins
parent59202e3e0219230e2ca0ff88b76f79f144d94219 (diff)
downloadweechat-fe7f92c4d8fbeac3257ac36af8491bce3dc32033.zip
irc: fix option "-temp" in command /server (closes #880)
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/irc/irc-command.c7
-rw-r--r--src/plugins/irc/irc-server.c34
2 files changed, 26 insertions, 15 deletions
diff --git a/src/plugins/irc/irc-command.c b/src/plugins/irc/irc-command.c
index b157f62fb..4c79dfea4 100644
--- a/src/plugins/irc/irc-command.c
+++ b/src/plugins/irc/irc-command.c
@@ -1295,8 +1295,8 @@ IRC_COMMAND_CALLBACK(connect)
argv[i], 1);
weechat_printf (
NULL,
- _("%s: server %s%s%s added (temporary "
- "server, NOT SAVED!)"),
+ _("%s: server %s%s%s added "
+ "(temporary server, NOT SAVED!)"),
IRC_PLUGIN_NAME,
IRC_COLOR_CHAT_SERVER,
ptr_server->name,
@@ -5010,6 +5010,9 @@ IRC_COMMAND_CALLBACK(server)
weechat_printf (
NULL,
+ (new_server->temp_server) ?
+ _("%s: server %s%s%s added "
+ "(temporary server, NOT SAVED!)") :
_("%s: server %s%s%s added"),
IRC_PLUGIN_NAME,
IRC_COLOR_CHAT_SERVER,
diff --git a/src/plugins/irc/irc-server.c b/src/plugins/irc/irc-server.c
index d2a9d6ab8..1218ef785 100644
--- a/src/plugins/irc/irc-server.c
+++ b/src/plugins/irc/irc-server.c
@@ -1403,22 +1403,30 @@ irc_server_apply_command_line_options (struct t_irc_server *server,
}
if (option_name)
{
- index_option = irc_server_search_option (option_name);
- if (index_option < 0)
+ if (weechat_strcasecmp (option_name, "temp") == 0)
{
- /* look if option is negative, like "-noxxx" */
- if (weechat_strncasecmp (argv[i], "-no", 3) == 0)
- {
- free (option_name);
- option_name = strdup (argv[i] + 3);
- index_option = irc_server_search_option (option_name);
- ptr_value = value_boolean[0];
- }
+ /* temporary server, not saved */
+ server->temp_server = 1;
}
- if (index_option >= 0)
+ else
{
- weechat_config_option_set (server->options[index_option],
- ptr_value, 1);
+ index_option = irc_server_search_option (option_name);
+ if (index_option < 0)
+ {
+ /* look if option is negative, like "-noxxx" */
+ if (weechat_strncasecmp (argv[i], "-no", 3) == 0)
+ {
+ free (option_name);
+ option_name = strdup (argv[i] + 3);
+ index_option = irc_server_search_option (option_name);
+ ptr_value = value_boolean[0];
+ }
+ }
+ if (index_option >= 0)
+ {
+ weechat_config_option_set (server->options[index_option],
+ ptr_value, 1);
+ }
}
free (option_name);
}