mirror of
https://github.com/irssi/irssi.git
synced 2024-12-04 14:46:39 -05:00
revert netsplit print optimisation
this reverts part of #465 unfortunately we need to further refine the initial patch - when filtering by channel, the whole split is cleaned up nevertheless - something similar happens for the netjoins - furthermore, we cannot wait only for PUBLIC msgs, j/p/q are equivalently relevant for temporal integrity
This commit is contained in:
parent
b3b68a4ae7
commit
fa8508404f
src/fe-common/irc
@ -253,15 +253,12 @@ static void sig_print_starting(TEXT_DEST_REC *dest)
|
|||||||
if (!IS_IRC_SERVER(dest->server))
|
if (!IS_IRC_SERVER(dest->server))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (!(dest->level & MSGLEVEL_PUBLIC))
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (!server_ischannel(dest->server, dest->target))
|
if (!server_ischannel(dest->server, dest->target))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
rec = netjoin_find_server(IRC_SERVER(dest->server));
|
rec = netjoin_find_server(IRC_SERVER(dest->server));
|
||||||
if (rec != NULL && rec->netjoins != NULL)
|
if (rec != NULL && rec->netjoins != NULL)
|
||||||
print_netjoins(rec, dest->target);
|
print_netjoins(rec, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int sig_check_netjoins(void)
|
static int sig_check_netjoins(void)
|
||||||
|
@ -199,7 +199,7 @@ static void temp_split_chan_free(TEMP_SPLIT_CHAN_REC *rec)
|
|||||||
g_free(rec);
|
g_free(rec);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void print_splits(IRC_SERVER_REC *server, const char *channel)
|
static void print_splits(IRC_SERVER_REC *server, const char *filter_channel)
|
||||||
{
|
{
|
||||||
TEMP_SPLIT_REC temp;
|
TEMP_SPLIT_REC temp;
|
||||||
GSList *servers;
|
GSList *servers;
|
||||||
@ -218,7 +218,7 @@ static void print_splits(IRC_SERVER_REC *server, const char *channel)
|
|||||||
|
|
||||||
g_hash_table_foreach(server->splits,
|
g_hash_table_foreach(server->splits,
|
||||||
(GHFunc) get_server_splits, &temp);
|
(GHFunc) get_server_splits, &temp);
|
||||||
print_server_splits(server, &temp, channel);
|
print_server_splits(server, &temp, filter_channel);
|
||||||
|
|
||||||
g_slist_foreach(temp.channels,
|
g_slist_foreach(temp.channels,
|
||||||
(GFunc) temp_split_chan_free, NULL);
|
(GFunc) temp_split_chan_free, NULL);
|
||||||
@ -255,15 +255,12 @@ static void sig_print_starting(TEXT_DEST_REC *dest)
|
|||||||
if (!IS_IRC_SERVER(dest->server))
|
if (!IS_IRC_SERVER(dest->server))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (!(dest->level & MSGLEVEL_PUBLIC))
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (!server_ischannel(dest->server, dest->target))
|
if (!server_ischannel(dest->server, dest->target))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
rec = IRC_SERVER(dest->server);
|
rec = IRC_SERVER(dest->server);
|
||||||
if (rec->split_servers != NULL)
|
if (rec->split_servers != NULL)
|
||||||
print_splits(rec, dest->target);
|
print_splits(rec, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int sig_check_splits(void)
|
static int sig_check_splits(void)
|
||||||
|
Loading…
Reference in New Issue
Block a user