X-Git-Url: https://jfr.im/git/irc/rqf/shadowircd.git/blobdiff_plain/446c7d4f57100bfe963b36f56117545f7804c3d6..ed6ad7a3756992ad8c65ab11376e827f8e086013:/modules/core/m_kick.c diff --git a/modules/core/m_kick.c b/modules/core/m_kick.c index 77b58f6..012891f 100644 --- a/modules/core/m_kick.c +++ b/modules/core/m_kick.c @@ -21,7 +21,6 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA * - * $Id: m_kick.c 3317 2007-03-28 23:17:06Z jilles $ */ #include "stdinc.h" @@ -68,7 +67,7 @@ m_kick(struct Client *client_p, struct Client *source_p, int parc, const char *p char *comment; const char *name; char *p = NULL; - char *text = rb_strdup(""); + char text[10]; const char *user; static char buf[BUFSIZE]; int is_override = 0; @@ -235,6 +234,11 @@ m_kick(struct Client *client_p, struct Client *source_p, int parc, const char *p use_id(source_p), chptr->chname, use_id(who), comment); remove_user_from_channel(msptr); + rb_snprintf(text, sizeof(text), "K%s", who->id); + + /* we don't need to track NOREJOIN stuff unless it's our client being kicked */ + if(MyClient(who) && chptr->mode.mode & MODE_NOREJOIN) + channel_metadata_time_add(chptr, text, rb_current_time(), "KICKNOREJOIN"); } else if (MyClient(source_p)) sendto_one_numeric(source_p, ERR_USERNOTINCHANNEL,