summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTimo Sirainen <cras@irssi.org>2002-06-13 21:59:25 +0000
committercras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564>2002-06-13 21:59:25 +0000
commit648a43ce1421c8b9474d4dfb90d8f669cf1bc83a (patch)
tree8f64c81b724e20774bbc8e0b965c78aa2c7be940 /src
parentaede6457a16dee9a94fc40223b655b8f1b3a9d51 (diff)
downloadirssi-648a43ce1421c8b9474d4dfb90d8f669cf1bc83a.zip
updated dancer's channel forwarding support - using +f channel mode now, and
we won't print whois_modes anymore after forwarding. git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2854 dbcabf3a-b0e7-0310-adc4-f8d773084564
Diffstat (limited to 'src')
-rw-r--r--src/fe-common/irc/fe-events-numeric.c12
-rw-r--r--src/irc/core/modes.h2
2 files changed, 10 insertions, 4 deletions
diff --git a/src/fe-common/irc/fe-events-numeric.c b/src/fe-common/irc/fe-events-numeric.c
index 85a9af5a..4e6e940a 100644
--- a/src/fe-common/irc/fe-events-numeric.c
+++ b/src/fe-common/irc/fe-events-numeric.c
@@ -459,7 +459,8 @@ static void event_whois_help(IRC_SERVER_REC *server, const char *data)
g_free(params);
}
-static void event_whois_modes(IRC_SERVER_REC *server, const char *data)
+static void event_whois_modes(IRC_SERVER_REC *server, const char *data,
+ const char *orignick)
{
char *params, *nick, *modes;
@@ -468,8 +469,13 @@ static void event_whois_modes(IRC_SERVER_REC *server, const char *data)
params = event_get_params(data, 6, NULL, &nick,
NULL, NULL, NULL, &modes);
- printformat(server, nick, MSGLEVEL_CRAP,
- IRCTXT_WHOIS_MODES, nick, modes);
+ if (!ischannel(*nick)) {
+ printformat(server, nick, MSGLEVEL_CRAP,
+ IRCTXT_WHOIS_MODES, nick, modes);
+ } else {
+ /* OPN's dancer uses for channel forwarding */
+ print_event_received(server, data, orignick, FALSE);
+ }
g_free(params);
}
diff --git a/src/irc/core/modes.h b/src/irc/core/modes.h
index 12f36896..d2e10cd9 100644
--- a/src/irc/core/modes.h
+++ b/src/irc/core/modes.h
@@ -5,7 +5,7 @@
#define HAS_MODE_ARG_ALWAYS(mode) \
((mode) == 'b' || (mode) == 'e' || (mode) == 'I' || (mode) == 'q' || \
(mode) == 'd' || (mode) == 'o' || (mode) == 'h' || (mode) == 'v' || \
- (mode) == 'O' || (mode) == 'k')
+ (mode) == 'O' || (mode) == 'k' || (mode) == 'f')
/* modes that have argument when being set (+) */
#define HAS_MODE_ARG_SET(mode) \