mirror of
https://github.com/irssi/irssi.git
synced 2025-02-02 15:08:01 -05:00
fix to some broken "ircds"
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2589 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
parent
d5564a0e01
commit
65e87c9861
@ -507,6 +507,19 @@ static void event_server_info(IRC_SERVER_REC *server, const char *data)
|
||||
g_free(params);
|
||||
}
|
||||
|
||||
static void event_motd(IRC_SERVER_REC *server, const char *data, const char *from)
|
||||
{
|
||||
if (server->connected)
|
||||
return;
|
||||
|
||||
/* Stupid broken piece of shit ircd didn't send us 001,
|
||||
you'd think they could at least get that right??
|
||||
But no, then I'll have to go and add these idiotic kludges
|
||||
to make them work. Maybe I should instead get the users of these
|
||||
servers to complain about it to their admins. */
|
||||
event_connected(server, data, from);
|
||||
}
|
||||
|
||||
static void event_channels_formed(IRC_SERVER_REC *server, const char *data)
|
||||
{
|
||||
char *params, *channels;
|
||||
@ -564,6 +577,7 @@ void irc_servers_init(void)
|
||||
signal_add_last("server quit", (SIGNAL_FUNC) sig_server_quit);
|
||||
signal_add("event 001", (SIGNAL_FUNC) event_connected);
|
||||
signal_add("event 004", (SIGNAL_FUNC) event_server_info);
|
||||
signal_add("event 375", (SIGNAL_FUNC) event_motd);
|
||||
signal_add("event 254", (SIGNAL_FUNC) event_channels_formed);
|
||||
signal_add("event 465", (SIGNAL_FUNC) event_server_banned);
|
||||
signal_add("event error", (SIGNAL_FUNC) event_error);
|
||||
@ -586,6 +600,7 @@ void irc_servers_deinit(void)
|
||||
signal_remove("server quit", (SIGNAL_FUNC) sig_server_quit);
|
||||
signal_remove("event 001", (SIGNAL_FUNC) event_connected);
|
||||
signal_remove("event 004", (SIGNAL_FUNC) event_server_info);
|
||||
signal_remove("event 375", (SIGNAL_FUNC) event_motd);
|
||||
signal_remove("event 254", (SIGNAL_FUNC) event_channels_formed);
|
||||
signal_remove("event 465", (SIGNAL_FUNC) event_server_banned);
|
||||
signal_remove("event error", (SIGNAL_FUNC) event_error);
|
||||
|
Loading…
Reference in New Issue
Block a user