summary refs log tree commit diff stats
path: root/src/common/proto-irc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/proto-irc.c')
-rw-r--r--src/common/proto-irc.c21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/common/proto-irc.c b/src/common/proto-irc.c
index bea9f6f7..128c0c85 100644
--- a/src/common/proto-irc.c
+++ b/src/common/proto-irc.c
@@ -1493,6 +1493,9 @@ irc_inline (server *serv, char *buf, int len)
 
 	if (buf[0] == ':')
 	{
+		int eat1;
+		int eat2;
+
 		/* find a context for this message */
 		if (is_channel (serv, word[3]))
 		{
@@ -1506,15 +1509,29 @@ irc_inline (server *serv, char *buf, int len)
 
 		word[0] = type;
 		word_eol[1] = buf;	/* keep the ":" for plugins */
-		if (plugin_emit_server (sess, type, word, word_eol))
+
+		eat1 = plugin_emit_server (sess, type, word, word_eol);
+		eat2 = plugin_emit_server_attrs (sess, type, word, word_eol, 
+										 tags_data.timestamp);
+
+		if (eat1 || eat2)
 			goto xit;
+
 		word[1]++;
 		word_eol[1] = buf + 1;	/* but not for HexChat internally */
 
 	} else
 	{
+		int eat1;
+		int eat2;
+
 		word[0] = type = word[1];
-		if (plugin_emit_server (sess, type, word, word_eol))
+
+		eat1 = plugin_emit_server (sess, type, word, word_eol);
+		eat2 = plugin_emit_server_attrs (sess, type, word, word_eol,
+										 tags_data.timestamp);
+
+		if (eat1 || eat2)
 			goto xit;
 	}