summaryrefslogtreecommitdiff
path: root/src/fe-common/core
diff options
context:
space:
mode:
authorTimo Sirainen <cras@irssi.org>2002-10-21 19:03:47 +0000
committercras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564>2002-10-21 19:03:47 +0000
commit37995ea05f77d8ef0fe429362e526e0de7080502 (patch)
tree9ebbeca9b22144003995570b284e8f7e14b4c17d /src/fe-common/core
parentfe4cdce6e6c442f502349304ef35f2ac2680a1b0 (diff)
downloadirssi-37995ea05f77d8ef0fe429362e526e0de7080502.zip
/SERVER and /DISCONNECT handlers moved from irc to core.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2969 dbcabf3a-b0e7-0310-adc4-f8d773084564
Diffstat (limited to 'src/fe-common/core')
-rw-r--r--src/fe-common/core/fe-server.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/fe-common/core/fe-server.c b/src/fe-common/core/fe-server.c
index 06f46777..f452d0a1 100644
--- a/src/fe-common/core/fe-server.c
+++ b/src/fe-common/core/fe-server.c
@@ -229,6 +229,17 @@ static void cmd_server_connect(const char *data)
cmd_params_free(free_arg);
}
+static void server_command(const char *data, SERVER_REC *server,
+ WI_ITEM_REC *item)
+{
+ if (server == NULL) {
+ /* this command accepts non-connected server too */
+ server = active_win->connect_server;
+ }
+
+ signal_continue(3, data, server, item);
+}
+
static void sig_server_looking(SERVER_REC *server)
{
g_return_if_fail(server != NULL);
@@ -330,6 +341,8 @@ void fe_server_init(void)
command_bind("server connect", NULL, (SIGNAL_FUNC) cmd_server_connect);
command_bind("server add", NULL, (SIGNAL_FUNC) cmd_server_add);
command_bind("server remove", NULL, (SIGNAL_FUNC) cmd_server_remove);
+ command_bind_first("server", NULL, (SIGNAL_FUNC) server_command);
+ command_bind_first("disconnect", NULL, (SIGNAL_FUNC) server_command);
command_set_options("server add", "4 6 ssl auto noauto proxy noproxy -host -port");
signal_add("server looking", (SIGNAL_FUNC) sig_server_looking);
@@ -352,6 +365,8 @@ void fe_server_deinit(void)
command_unbind("server connect", (SIGNAL_FUNC) cmd_server_connect);
command_unbind("server add", (SIGNAL_FUNC) cmd_server_add);
command_unbind("server remove", (SIGNAL_FUNC) cmd_server_remove);
+ command_unbind("server", (SIGNAL_FUNC) server_command);
+ command_unbind("disconnect", (SIGNAL_FUNC) server_command);
signal_remove("server looking", (SIGNAL_FUNC) sig_server_looking);
signal_remove("server connecting", (SIGNAL_FUNC) sig_server_connecting);