Fix +K unintentionally stripping any messages to the channel of color.

This commit is contained in:
B.Greenham 2010-03-05 20:59:23 -05:00
parent 76db4b42e2
commit e80126d0d3
1 changed files with 4 additions and 2 deletions

View File

@ -500,10 +500,12 @@ msg_channel(int p_or_n, const char *command,
if(chptr->mode.mode & MODE_NOREPEAT) if(chptr->mode.mode & MODE_NOREPEAT)
{ {
rb_strlcpy(text2, text, BUFSIZE);
strip_colour(text2);
md = channel_metadata_find(chptr, "NOREPEAT"); md = channel_metadata_find(chptr, "NOREPEAT");
if(md && (!ConfigChannel.exempt_cmode_K || !is_any_op(msptr))) if(md && (!ConfigChannel.exempt_cmode_K || !is_any_op(msptr)))
{ {
if(!(strcmp(md->value, strip_colour(text)))) if(!(strcmp(md->value, text2)))
{ {
if(p_or_n != NOTICE) if(p_or_n != NOTICE)
sendto_one_numeric(source_p, ERR_CANNOTSENDTOCHAN, sendto_one_numeric(source_p, ERR_CANNOTSENDTOCHAN,
@ -512,7 +514,7 @@ msg_channel(int p_or_n, const char *command,
} }
} }
channel_metadata_delete(chptr, "NOREPEAT", 0); channel_metadata_delete(chptr, "NOREPEAT", 0);
channel_metadata_add(chptr, "NOREPEAT", strip_colour(text), 0); channel_metadata_add(chptr, "NOREPEAT", text2, 0);
} }
if(chptr->mode.mode & MODE_NOCOLOR && (!ConfigChannel.exempt_cmode_c || !is_any_op(msptr))) if(chptr->mode.mode & MODE_NOCOLOR && (!ConfigChannel.exempt_cmode_c || !is_any_op(msptr)))