summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWouter Coekaerts <coekie@irssi.org>2005-01-03 18:54:39 +0000
committercoekie <coekie@dbcabf3a-b0e7-0310-adc4-f8d773084564>2005-01-03 18:54:39 +0000
commit124e79aeeb0966d6b7d710762922f3612e6ef1e8 (patch)
treec04dc696486e117410d4d02486e0ab0c8f360abd
parent1074f0377ed8c89bb81e0b0fa6c84c6075a6f663 (diff)
downloadirssi-124e79aeeb0966d6b7d710762922f3612e6ef1e8.zip
"ban remove" signal should pass who removed it, patch by Timothy Hatcher (Bug 166)
added it to docs/signals.txt too git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3696 dbcabf3a-b0e7-0310-adc4-f8d773084564
-rw-r--r--docs/signals.txt2
-rw-r--r--src/irc/core/mode-lists.c4
-rw-r--r--src/irc/core/mode-lists.h2
-rw-r--r--src/irc/core/modes.c2
4 files changed, 5 insertions, 5 deletions
diff --git a/docs/signals.txt b/docs/signals.txt
index a6bd067e..893d6661 100644
--- a/docs/signals.txt
+++ b/docs/signals.txt
@@ -147,7 +147,7 @@ massjoin.c:
mode-lists.c:
"ban new", CHANNEL_REC, BAN_REC
- "ban remove", CHANNEL_REC, BAN_REC
+ "ban remove", CHANNEL_REC, BAN_REC, char *setby
modes.c:
"channel mode changed", CHANNEL_REC, char *setby
diff --git a/src/irc/core/mode-lists.c b/src/irc/core/mode-lists.c
index ee60f1b2..a275d49f 100644
--- a/src/irc/core/mode-lists.c
+++ b/src/irc/core/mode-lists.c
@@ -88,7 +88,7 @@ BAN_REC *banlist_add(IRC_CHANNEL_REC *channel, const char *ban,
return rec;
}
-void banlist_remove(IRC_CHANNEL_REC *channel, const char *ban)
+void banlist_remove(IRC_CHANNEL_REC *channel, const char *ban, const char *nick)
{
BAN_REC *rec;
@@ -97,7 +97,7 @@ void banlist_remove(IRC_CHANNEL_REC *channel, const char *ban)
rec = banlist_find(channel->banlist, ban);
if (rec != NULL) {
- signal_emit("ban remove", 2, channel, rec);
+ signal_emit("ban remove", 3, channel, rec, nick);
ban_free(&channel->banlist, rec);
}
}
diff --git a/src/irc/core/mode-lists.h b/src/irc/core/mode-lists.h
index 105e1245..cd3bc0bf 100644
--- a/src/irc/core/mode-lists.h
+++ b/src/irc/core/mode-lists.h
@@ -10,7 +10,7 @@ typedef struct {
BAN_REC *banlist_find(GSList *list, const char *ban);
BAN_REC *banlist_add(IRC_CHANNEL_REC *channel, const char *ban, const char *nick, time_t time);
-void banlist_remove(IRC_CHANNEL_REC *channel, const char *ban);
+void banlist_remove(IRC_CHANNEL_REC *channel, const char *ban, const char *nick);
BAN_REC *banlist_exception_add(IRC_CHANNEL_REC *channel, const char *ban, const char *nick, time_t time);
void banlist_exception_remove(IRC_CHANNEL_REC *channel, const char *ban);
diff --git a/src/irc/core/modes.c b/src/irc/core/modes.c
index e7a8e63b..cac897ec 100644
--- a/src/irc/core/modes.c
+++ b/src/irc/core/modes.c
@@ -207,7 +207,7 @@ void modes_type_a(IRC_CHANNEL_REC *channel, const char *setby, char type,
if (type == '+')
banlist_add(channel, arg, setby, time(NULL));
else
- banlist_remove(channel, arg);
+ banlist_remove(channel, arg, setby);
}
}