From 60909283338c1961ed1918616195586ed1efef3c Mon Sep 17 00:00:00 2001 From: Bram Matthys Date: Sun, 6 Mar 2005 21:01:42 +0000 Subject: [PATCH] - Fixed /SAMODE with no can_override not always working with +G/+j/+T (extcmodes), reported by Ron2K (#0002398). --- Changes | 2 ++ src/modules/m_mode.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Changes b/Changes index cd3b5c412..b1c44baeb 100644 --- a/Changes +++ b/Changes @@ -759,3 +759,5 @@ - Updated release notes (translated docs, zlib, doc\technical, sp/cS desynch). - Made +g get removed when an oper sets -o (#0002399) reported by Ron2K. - Made it so the win32 version shows channel modes in /list (#0002397) reported by Ron2K. +- Fixed /SAMODE with no can_override not always working with +G/+j/+T (extcmodes), reported + by Ron2K (#0002398). diff --git a/src/modules/m_mode.c b/src/modules/m_mode.c index 0de5a98ca..2e2a12585 100644 --- a/src/modules/m_mode.c +++ b/src/modules/m_mode.c @@ -1710,7 +1710,7 @@ int x; { x = Channelmode_Table[modeindex].is_ok(cptr, chptr, param, EXCHK_ACCESS, what); if ((x == EX_ALWAYS_DENY) || - ((x == EX_DENY) && !op_can_override(cptr))) + ((x == EX_DENY) && !op_can_override(cptr) && !samode_in_progress)) { Channelmode_Table[modeindex].is_ok(cptr, chptr, param, EXCHK_ACCESS_ERR, what); return paracnt; /* Denied & error msg sent */