diff options
author | Sébastien Helleu <flashcode@flashtux.org> | 2017-01-06 22:44:13 +0100 |
---|---|---|
committer | Sébastien Helleu <flashcode@flashtux.org> | 2017-01-06 22:44:13 +0100 |
commit | fe7f92c4d8fbeac3257ac36af8491bce3dc32033 (patch) | |
tree | e9c0f2bc8319ab6f7c7b488fc79baeb9ba8ebcad /src/plugins | |
parent | 59202e3e0219230e2ca0ff88b76f79f144d94219 (diff) | |
download | weechat-fe7f92c4d8fbeac3257ac36af8491bce3dc32033.zip |
irc: fix option "-temp" in command /server (closes #880)
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/irc/irc-command.c | 7 | ||||
-rw-r--r-- | src/plugins/irc/irc-server.c | 34 |
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); } |