summaryrefslogtreecommitdiff
path: root/src/fe-common/irc/fe-netsplit.c
diff options
context:
space:
mode:
authorTimo Sirainen <cras@irssi.org>2000-12-01 01:00:28 +0000
committercras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564>2000-12-01 01:00:28 +0000
commitbb53065babd413b05d6f3afa97e1537cd9aa8069 (patch)
treef028a227a878b742a55d338a7ff8633b68b7e925 /src/fe-common/irc/fe-netsplit.c
parent12ec2b86b8eeca24e01f648a5a75f0e942da61a0 (diff)
downloadirssi-bb53065babd413b05d6f3afa97e1537cd9aa8069.zip
Netsplit printing fixes.
Print multiple identical mode changes in one line (mode +o nick by nick1, nick2, nick3) git-svn-id: http://svn.irssi.org/repos/irssi/trunk@906 dbcabf3a-b0e7-0310-adc4-f8d773084564
Diffstat (limited to 'src/fe-common/irc/fe-netsplit.c')
-rw-r--r--src/fe-common/irc/fe-netsplit.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/fe-common/irc/fe-netsplit.c b/src/fe-common/irc/fe-netsplit.c
index 9a4b9446..ca1ca76a 100644
--- a/src/fe-common/irc/fe-netsplit.c
+++ b/src/fe-common/irc/fe-netsplit.c
@@ -32,10 +32,11 @@
#include "printtext.h"
-#define SPLIT_WAIT_TIME 2 /* how many seconds to wait for the QUIT split messages to stop */
+#define SPLIT_WAIT_TIME 5 /* how many seconds to wait for the QUIT split messages to stop */
static int split_tag;
static int netsplit_max_nicks, netsplit_nicks_hide_threshold;
+static int printing_splits;
static int get_last_split(IRC_SERVER_REC *server)
{
@@ -196,6 +197,8 @@ static void print_splits(IRC_SERVER_REC *server)
TEMP_SPLIT_REC temp;
GSList *servers;
+ printing_splits = TRUE;
+
servers = g_slist_copy(server->split_servers);
while (servers != NULL) {
NETSPLIT_SERVER_REC *sserver = servers->data;
@@ -215,6 +218,8 @@ static void print_splits(IRC_SERVER_REC *server)
g_slist_free(temp.servers);
g_slist_free(temp.channels);
}
+
+ printing_splits = FALSE;
}
static int check_server_splits(IRC_SERVER_REC *server)
@@ -237,6 +242,9 @@ static void sig_print_starting(void)
{
GSList *tmp;
+ if (printing_splits)
+ return;
+
for (tmp = servers; tmp != NULL; tmp = tmp->next) {
IRC_SERVER_REC *rec = tmp->data;
@@ -320,6 +328,7 @@ void fe_netsplit_init(void)
settings_add_int("misc", "netsplit_max_nicks", 10);
settings_add_int("misc", "netsplit_nicks_hide_threshold", 15);
split_tag = -1;
+ printing_splits = FALSE;
read_settings();
signal_add("netsplit add", (SIGNAL_FUNC) sig_netsplit_servers);