From 2c2a0e993e6bc51e787ad18462dde070c85a9b08 Mon Sep 17 00:00:00 2001 From: kofany <92736603+kofany@users.noreply.github.com> Date: Sun, 10 Aug 2025 10:57:28 +0200 Subject: [PATCH 1/3] Add option to print WHOIS replies in active window (#1) Co-authored-by: Cursor Agent Co-authored-by: appandsync --- src/fe-common/irc/fe-whois.c | 142 ++++++++++++++++------------------- 1 file changed, 64 insertions(+), 78 deletions(-) diff --git a/src/fe-common/irc/fe-whois.c b/src/fe-common/irc/fe-whois.c index b0eeb19a..1b19cb77 100644 --- a/src/fe-common/irc/fe-whois.c +++ b/src/fe-common/irc/fe-whois.c @@ -12,17 +12,25 @@ #include +/* When enabled, prints WHOIS replies into active window while preserving + * formatting and theming. */ +#define WHOIS_PRINT(server, nick, level, formatnum, ...) \ + do { \ + if (settings_get_bool("print_whois_rpl_in_active_window") && active_win != NULL) \ + printformat_window(active_win, level, formatnum, __VA_ARGS__); \ + else \ + printformat(server, nick, level, formatnum, __VA_ARGS__); \ + } while (0) + static void event_whois(IRC_SERVER_REC *server, const char *data) { char *params, *nick, *user, *host, *realname, *recoded; g_return_if_fail(data != NULL); - params = event_get_params(data, 6, NULL, &nick, &user, - &host, NULL, &realname); + params = event_get_params(data, 6, NULL, &nick, &user, &host, NULL, &realname); recoded = recode_in(SERVER(server), realname, nick); - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS, nick, user, host, recoded); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS, nick, user, host, recoded); g_free(params); g_free(recoded); } @@ -34,8 +42,7 @@ static void event_whois_special(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); params = event_get_params(data, 3 | PARAM_FLAG_GETREST, NULL, &nick, &str); - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_SPECIAL, nick, str); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_SPECIAL, nick, str); g_free(params); } @@ -47,26 +54,24 @@ static void event_whois_idle(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - params = event_get_params(data, 5 | PARAM_FLAG_GETREST, NULL, - &nick, &secstr, &signonstr, &rest); + params = + event_get_params(data, 5 | PARAM_FLAG_GETREST, NULL, &nick, &secstr, &signonstr, &rest); secs = atol(secstr); - signon = strstr(rest, "signon time") == NULL ? 0 : - (time_t) atol(signonstr); + signon = strstr(rest, "signon time") == NULL ? 0 : (time_t) atol(signonstr); - days = secs/3600/24; - hours = (secs%(3600*24))/3600; - mins = (secs%3600)/60; + days = secs / 3600 / 24; + hours = (secs % (3600 * 24)) / 3600; + mins = (secs % 3600) / 60; secs %= 60; if (signon == 0) - printformat(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_IDLE, - nick, days, hours, mins, secs); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_IDLE, nick, days, hours, mins, + secs); else { timestr = my_asctime(signon); - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_IDLE_SIGNON, - nick, days, hours, mins, secs, timestr); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_IDLE_SIGNON, nick, days, + hours, mins, secs, timestr); g_free(timestr); } g_free(params); @@ -79,8 +84,7 @@ static void event_whois_server(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); params = event_get_params(data, 4, NULL, &nick, &whoserver, &desc); - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_SERVER, nick, whoserver, desc); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_SERVER, nick, whoserver, desc); g_free(params); } @@ -99,14 +103,14 @@ static void event_whois_oper(IRC_SERVER_REC *server, const char *data) if ((!strncmp(type, "is an ", 6)) || (!strncmp(type, "is a ", 5))) { type += 5; - if (*type == ' ') type++; + if (*type == ' ') + type++; } if (*type == '\0') type = "IRC Operator"; - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_OPER, nick, type); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_OPER, nick, type); g_free(params); } @@ -116,12 +120,10 @@ static void event_whois_modes(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - params = event_get_params(data, 3 | PARAM_FLAG_GETREST, - NULL, &nick, &modes); + params = event_get_params(data, 3 | PARAM_FLAG_GETREST, NULL, &nick, &modes); if (!strncmp(modes, "is using modes ", 15)) modes += 15; - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_MODES, nick, modes); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_MODES, nick, modes); g_free(params); } @@ -131,24 +133,22 @@ static void event_whois_realhost(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - /* real hostname */ - params = event_get_params(data, 5, NULL, &nick, &txt_real, - &txt_hostname, &hostname); - if (g_strcmp0(txt_real, "real") != 0 || - g_strcmp0(txt_hostname, "hostname") != 0) { + /* real hostname */ + params = event_get_params(data, 5, NULL, &nick, &txt_real, &txt_hostname, &hostname); + if (g_strcmp0(txt_real, "real") != 0 || g_strcmp0(txt_hostname, "hostname") != 0) { /* :... from */ - g_free(params); + g_free(params); params = event_get_params(data, 3, NULL, &nick, &hostname); hostname = strstr(hostname, "from "); - if (hostname != NULL) hostname += 5; + if (hostname != NULL) + hostname += 5; } if (hostname != NULL) { if (!strncmp(hostname, "*@", 2)) hostname += 2; - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_REALHOST, nick, hostname, ""); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_REALHOST, nick, hostname, ""); } else { event_whois_special(server, data); } @@ -161,11 +161,10 @@ static void event_whois_usermode326(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - /* :has oper privs: */ + /* :has oper privs: */ params = event_get_params(data, 3, NULL, &nick, &usermode); - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_USERMODE, nick, usermode); - g_free(params); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_USERMODE, nick, usermode); + g_free(params); } static void event_whois_realhost327(IRC_SERVER_REC *server, const char *data) @@ -177,8 +176,7 @@ static void event_whois_realhost327(IRC_SERVER_REC *server, const char *data) /* :Real hostname/IP */ params = event_get_params(data, 5, NULL, &nick, &hostname, &ip, &text); if (*text != '\0') { - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_REALHOST, nick, hostname, ip); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_REALHOST, nick, hostname, ip); } else { event_whois_special(server, data); } @@ -199,11 +197,9 @@ static void event_whois_realhost338(IRC_SERVER_REC *server, const char *data) */ params = event_get_params(data, 5, NULL, &nick, &arg1, &arg2, &arg3); if (*arg3 != '\0') { - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_REALHOST, nick, arg1, arg2); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_REALHOST, nick, arg1, arg2); } else if (*arg2 != '\0') { - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_REALHOST, nick, arg1, ""); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_REALHOST, nick, arg1, ""); } else { event_whois_special(server, data); } @@ -216,13 +212,11 @@ static void event_whois_usermode(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - params = event_get_params(data, 4, NULL, &txt_usermodes, - &nick, &usermode); + params = event_get_params(data, 4, NULL, &txt_usermodes, &nick, &usermode); if (g_strcmp0(txt_usermodes, "usermodes") == 0) { /* usermodes usermode */ - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_USERMODE, nick, usermode); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_USERMODE, nick, usermode); } else { event_whois_special(server, data); } @@ -249,7 +243,7 @@ static void hide_safe_channel_id(IRC_SERVER_REC *server, char *chans) if (idchan[1] != ':') return; - length = strtoul(idchan+2, &end, 10); + length = strtoul(idchan + 2, &end, 10); if (*end == ',') end++; else if (*end != '\0') @@ -292,8 +286,7 @@ static void event_whois_channels(IRC_SERVER_REC *server, const char *data) if (settings_get_bool("whois_hide_safe_channel_id")) hide_safe_channel_id(server, chans); recoded = recode_in(SERVER(server), chans, nick); - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_CHANNELS, nick, recoded); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_CHANNELS, nick, recoded); g_free(chans); g_free(params); @@ -308,8 +301,7 @@ static void event_whois_away(IRC_SERVER_REC *server, const char *data) params = event_get_params(data, 3, NULL, &nick, &awaymsg); recoded = recode_in(SERVER(server), awaymsg, nick); - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_AWAY, nick, recoded); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_AWAY, nick, recoded); g_free(params); g_free(recoded); } @@ -322,8 +314,7 @@ static void event_end_of_whois(IRC_SERVER_REC *server, const char *data) params = event_get_params(data, 2, NULL, &nick); if (server->whois_found) { - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_END_OF_WHOIS, nick); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_END_OF_WHOIS, nick); } g_free(params); } @@ -335,8 +326,7 @@ static void event_whois_auth(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); params = event_get_params(data, 3, NULL, &nick, &text); - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOIS_EXTRA, nick, text); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_EXTRA, nick, text); g_free(params); } @@ -346,11 +336,9 @@ static void event_whowas(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - params = event_get_params(data, 6, NULL, &nick, &user, - &host, NULL, &realname); + params = event_get_params(data, 6, NULL, &nick, &user, &host, NULL, &realname); recoded = recode_in(SERVER(server), realname, nick); - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_WHOWAS, nick, user, host, recoded); + printformat(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOWAS, nick, user, host, recoded); g_free(params); g_free(recoded); } @@ -363,8 +351,7 @@ static void event_end_of_whowas(IRC_SERVER_REC *server, const char *data) params = event_get_params(data, 2, NULL, &nick); if (server->whowas_found) { - printformat(server, nick, MSGLEVEL_CRAP, - IRCTXT_END_OF_WHOWAS, nick); + printformat(server, nick, MSGLEVEL_CRAP, IRCTXT_END_OF_WHOWAS, nick); } g_free(params); } @@ -374,19 +361,17 @@ struct whois_event_table { void (*func)(IRC_SERVER_REC *, const char *); }; -static struct whois_event_table events[] = { - { 312, event_whois_server }, - { 326, event_whois_usermode326 }, - { 327, event_whois_realhost327 }, - { 338, event_whois_realhost338 }, - { 379, event_whois_modes }, - { 378, event_whois_realhost }, - { 377, event_whois_usermode }, - { 317, event_whois_idle }, - { 330, event_whois_auth }, - { 319, event_whois_channels }, - { 0, NULL } -}; +static struct whois_event_table events[] = { { 312, event_whois_server }, + { 326, event_whois_usermode326 }, + { 327, event_whois_realhost327 }, + { 338, event_whois_realhost338 }, + { 379, event_whois_modes }, + { 378, event_whois_realhost }, + { 377, event_whois_usermode }, + { 317, event_whois_idle }, + { 330, event_whois_auth }, + { 319, event_whois_channels }, + { 0, NULL } }; static void event_whois_default(IRC_SERVER_REC *server, const char *data) { @@ -406,6 +391,7 @@ static void event_whois_default(IRC_SERVER_REC *server, const char *data) void fe_whois_init(void) { settings_add_bool("lookandfeel", "whois_hide_safe_channel_id", TRUE); + settings_add_bool("lookandfeel", "print_whois_rpl_in_active_window", FALSE); signal_add("event 311", (SIGNAL_FUNC) event_whois); signal_add("event 312", (SIGNAL_FUNC) event_whois_server); From 7c84692110291fb71b7638d2e40bd8c1d8dbf0c4 Mon Sep 17 00:00:00 2001 From: kofany Date: Wed, 27 Aug 2025 23:15:22 +0200 Subject: [PATCH 2/3] [2025-08-27 23:15:22] file format fix --- src/fe-common/irc/fe-whois.c | 143 ++++++++++++++++++++--------------- 1 file changed, 84 insertions(+), 59 deletions(-) diff --git a/src/fe-common/irc/fe-whois.c b/src/fe-common/irc/fe-whois.c index 1b19cb77..412cb56b 100644 --- a/src/fe-common/irc/fe-whois.c +++ b/src/fe-common/irc/fe-whois.c @@ -14,12 +14,12 @@ /* When enabled, prints WHOIS replies into active window while preserving * formatting and theming. */ -#define WHOIS_PRINT(server, nick, level, formatnum, ...) \ - do { \ - if (settings_get_bool("print_whois_rpl_in_active_window") && active_win != NULL) \ - printformat_window(active_win, level, formatnum, __VA_ARGS__); \ - else \ - printformat(server, nick, level, formatnum, __VA_ARGS__); \ +#define WHOIS_PRINT(server, nick, level, formatnum, ...) \ + do { \ + if (settings_get_bool("print_whois_rpl_in_active_window") && active_win != NULL) \ + printformat_window(active_win, level, formatnum, __VA_ARGS__); \ + else \ + printformat(server, nick, level, formatnum, __VA_ARGS__); \ } while (0) static void event_whois(IRC_SERVER_REC *server, const char *data) @@ -28,9 +28,11 @@ static void event_whois(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - params = event_get_params(data, 6, NULL, &nick, &user, &host, NULL, &realname); + params = event_get_params(data, 6, NULL, &nick, &user, + &host, NULL, &realname); recoded = recode_in(SERVER(server), realname, nick); - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS, nick, user, host, recoded); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS, nick, user, host, recoded); g_free(params); g_free(recoded); } @@ -42,7 +44,8 @@ static void event_whois_special(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); params = event_get_params(data, 3 | PARAM_FLAG_GETREST, NULL, &nick, &str); - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_SPECIAL, nick, str); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_SPECIAL, nick, str); g_free(params); } @@ -54,24 +57,26 @@ static void event_whois_idle(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - params = - event_get_params(data, 5 | PARAM_FLAG_GETREST, NULL, &nick, &secstr, &signonstr, &rest); + params = event_get_params(data, 5 | PARAM_FLAG_GETREST, NULL, + &nick, &secstr, &signonstr, &rest); secs = atol(secstr); - signon = strstr(rest, "signon time") == NULL ? 0 : (time_t) atol(signonstr); + signon = strstr(rest, "signon time") == NULL ? 0 : + (time_t) atol(signonstr); - days = secs / 3600 / 24; - hours = (secs % (3600 * 24)) / 3600; - mins = (secs % 3600) / 60; + days = secs/3600/24; + hours = (secs%(3600*24))/3600; + mins = (secs%3600)/60; secs %= 60; if (signon == 0) - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_IDLE, nick, days, hours, mins, - secs); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_IDLE, + nick, days, hours, mins, secs); else { timestr = my_asctime(signon); - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_IDLE_SIGNON, nick, days, - hours, mins, secs, timestr); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_IDLE_SIGNON, + nick, days, hours, mins, secs, timestr); g_free(timestr); } g_free(params); @@ -84,7 +89,8 @@ static void event_whois_server(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); params = event_get_params(data, 4, NULL, &nick, &whoserver, &desc); - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_SERVER, nick, whoserver, desc); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_SERVER, nick, whoserver, desc); g_free(params); } @@ -103,14 +109,14 @@ static void event_whois_oper(IRC_SERVER_REC *server, const char *data) if ((!strncmp(type, "is an ", 6)) || (!strncmp(type, "is a ", 5))) { type += 5; - if (*type == ' ') - type++; + if (*type == ' ') type++; } if (*type == '\0') type = "IRC Operator"; - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_OPER, nick, type); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_OPER, nick, type); g_free(params); } @@ -120,10 +126,12 @@ static void event_whois_modes(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - params = event_get_params(data, 3 | PARAM_FLAG_GETREST, NULL, &nick, &modes); + params = event_get_params(data, 3 | PARAM_FLAG_GETREST, + NULL, &nick, &modes); if (!strncmp(modes, "is using modes ", 15)) modes += 15; - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_MODES, nick, modes); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_MODES, nick, modes); g_free(params); } @@ -133,22 +141,24 @@ static void event_whois_realhost(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - /* real hostname */ - params = event_get_params(data, 5, NULL, &nick, &txt_real, &txt_hostname, &hostname); - if (g_strcmp0(txt_real, "real") != 0 || g_strcmp0(txt_hostname, "hostname") != 0) { + /* real hostname */ + params = event_get_params(data, 5, NULL, &nick, &txt_real, + &txt_hostname, &hostname); + if (g_strcmp0(txt_real, "real") != 0 || + g_strcmp0(txt_hostname, "hostname") != 0) { /* :... from */ - g_free(params); + g_free(params); params = event_get_params(data, 3, NULL, &nick, &hostname); hostname = strstr(hostname, "from "); - if (hostname != NULL) - hostname += 5; + if (hostname != NULL) hostname += 5; } if (hostname != NULL) { if (!strncmp(hostname, "*@", 2)) hostname += 2; - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_REALHOST, nick, hostname, ""); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_REALHOST, nick, hostname, ""); } else { event_whois_special(server, data); } @@ -161,10 +171,11 @@ static void event_whois_usermode326(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - /* :has oper privs: */ + /* :has oper privs: */ params = event_get_params(data, 3, NULL, &nick, &usermode); - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_USERMODE, nick, usermode); - g_free(params); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_USERMODE, nick, usermode); + g_free(params); } static void event_whois_realhost327(IRC_SERVER_REC *server, const char *data) @@ -176,7 +187,8 @@ static void event_whois_realhost327(IRC_SERVER_REC *server, const char *data) /* :Real hostname/IP */ params = event_get_params(data, 5, NULL, &nick, &hostname, &ip, &text); if (*text != '\0') { - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_REALHOST, nick, hostname, ip); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_REALHOST, nick, hostname, ip); } else { event_whois_special(server, data); } @@ -197,9 +209,11 @@ static void event_whois_realhost338(IRC_SERVER_REC *server, const char *data) */ params = event_get_params(data, 5, NULL, &nick, &arg1, &arg2, &arg3); if (*arg3 != '\0') { - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_REALHOST, nick, arg1, arg2); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_REALHOST, nick, arg1, arg2); } else if (*arg2 != '\0') { - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_REALHOST, nick, arg1, ""); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_REALHOST, nick, arg1, ""); } else { event_whois_special(server, data); } @@ -212,11 +226,13 @@ static void event_whois_usermode(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - params = event_get_params(data, 4, NULL, &txt_usermodes, &nick, &usermode); + params = event_get_params(data, 4, NULL, &txt_usermodes, + &nick, &usermode); if (g_strcmp0(txt_usermodes, "usermodes") == 0) { /* usermodes usermode */ - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_USERMODE, nick, usermode); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_USERMODE, nick, usermode); } else { event_whois_special(server, data); } @@ -243,7 +259,7 @@ static void hide_safe_channel_id(IRC_SERVER_REC *server, char *chans) if (idchan[1] != ':') return; - length = strtoul(idchan + 2, &end, 10); + length = strtoul(idchan+2, &end, 10); if (*end == ',') end++; else if (*end != '\0') @@ -286,7 +302,8 @@ static void event_whois_channels(IRC_SERVER_REC *server, const char *data) if (settings_get_bool("whois_hide_safe_channel_id")) hide_safe_channel_id(server, chans); recoded = recode_in(SERVER(server), chans, nick); - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_CHANNELS, nick, recoded); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_CHANNELS, nick, recoded); g_free(chans); g_free(params); @@ -301,7 +318,8 @@ static void event_whois_away(IRC_SERVER_REC *server, const char *data) params = event_get_params(data, 3, NULL, &nick, &awaymsg); recoded = recode_in(SERVER(server), awaymsg, nick); - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_AWAY, nick, recoded); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_AWAY, nick, recoded); g_free(params); g_free(recoded); } @@ -314,7 +332,8 @@ static void event_end_of_whois(IRC_SERVER_REC *server, const char *data) params = event_get_params(data, 2, NULL, &nick); if (server->whois_found) { - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_END_OF_WHOIS, nick); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_END_OF_WHOIS, nick); } g_free(params); } @@ -326,7 +345,8 @@ static void event_whois_auth(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); params = event_get_params(data, 3, NULL, &nick, &text); - WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOIS_EXTRA, nick, text); + WHOIS_PRINT(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOIS_EXTRA, nick, text); g_free(params); } @@ -336,9 +356,11 @@ static void event_whowas(IRC_SERVER_REC *server, const char *data) g_return_if_fail(data != NULL); - params = event_get_params(data, 6, NULL, &nick, &user, &host, NULL, &realname); + params = event_get_params(data, 6, NULL, &nick, &user, + &host, NULL, &realname); recoded = recode_in(SERVER(server), realname, nick); - printformat(server, nick, MSGLEVEL_CRAP, IRCTXT_WHOWAS, nick, user, host, recoded); + printformat(server, nick, MSGLEVEL_CRAP, + IRCTXT_WHOWAS, nick, user, host, recoded); g_free(params); g_free(recoded); } @@ -351,7 +373,8 @@ static void event_end_of_whowas(IRC_SERVER_REC *server, const char *data) params = event_get_params(data, 2, NULL, &nick); if (server->whowas_found) { - printformat(server, nick, MSGLEVEL_CRAP, IRCTXT_END_OF_WHOWAS, nick); + printformat(server, nick, MSGLEVEL_CRAP, + IRCTXT_END_OF_WHOWAS, nick); } g_free(params); } @@ -361,17 +384,19 @@ struct whois_event_table { void (*func)(IRC_SERVER_REC *, const char *); }; -static struct whois_event_table events[] = { { 312, event_whois_server }, - { 326, event_whois_usermode326 }, - { 327, event_whois_realhost327 }, - { 338, event_whois_realhost338 }, - { 379, event_whois_modes }, - { 378, event_whois_realhost }, - { 377, event_whois_usermode }, - { 317, event_whois_idle }, - { 330, event_whois_auth }, - { 319, event_whois_channels }, - { 0, NULL } }; +static struct whois_event_table events[] = { + { 312, event_whois_server }, + { 326, event_whois_usermode326 }, + { 327, event_whois_realhost327 }, + { 338, event_whois_realhost338 }, + { 379, event_whois_modes }, + { 378, event_whois_realhost }, + { 377, event_whois_usermode }, + { 317, event_whois_idle }, + { 330, event_whois_auth }, + { 319, event_whois_channels }, + { 0, NULL } +}; static void event_whois_default(IRC_SERVER_REC *server, const char *data) { From 26d351f69f8c041559cf648e781d238aac338a15 Mon Sep 17 00:00:00 2001 From: kofany <92736603+kofany@users.noreply.github.com> Date: Mon, 6 Oct 2025 20:25:47 +0200 Subject: [PATCH 3/3] Update src/fe-common/irc/fe-whois.c As suggested Co-authored-by: Doug Freed --- src/fe-common/irc/fe-whois.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fe-common/irc/fe-whois.c b/src/fe-common/irc/fe-whois.c index 412cb56b..fd118ec1 100644 --- a/src/fe-common/irc/fe-whois.c +++ b/src/fe-common/irc/fe-whois.c @@ -416,7 +416,7 @@ static void event_whois_default(IRC_SERVER_REC *server, const char *data) void fe_whois_init(void) { settings_add_bool("lookandfeel", "whois_hide_safe_channel_id", TRUE); - settings_add_bool("lookandfeel", "print_whois_rpl_in_active_window", FALSE); + settings_add_bool("lookandfeel", "whois_reply_active_window", FALSE); signal_add("event 311", (SIGNAL_FUNC) event_whois); signal_add("event 312", (SIGNAL_FUNC) event_whois_server);