aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar Sadie Powell2024-12-23 14:55:38 +0000
committerGravatar Sadie Powell2024-12-23 14:55:38 +0000
commitf07eedcb23596010066c0582dec65e0329ce1aff (patch)
tree38994cb27d13cdf41083a121ace22987d3a3babf /src
parentUpdate the checklist in the pull request template. (diff)
downloadinspircd++-f07eedcb23596010066c0582dec65e0329ce1aff.tar.gz
inspircd++-f07eedcb23596010066c0582dec65e0329ce1aff.tar.bz2
inspircd++-f07eedcb23596010066c0582dec65e0329ce1aff.zip
Fix matching acting extbans when multiple extbans are set.
Diffstat (limited to 'src')
-rw-r--r--src/coremods/core_channel/extban.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/coremods/core_channel/extban.cpp b/src/coremods/core_channel/extban.cpp
index 50b548900..f3bf9bb4b 100644
--- a/src/coremods/core_channel/extban.cpp
+++ b/src/coremods/core_channel/extban.cpp
@@ -154,7 +154,10 @@ ModResult ExtBanManager::GetStatus(ExtBan::ActingBase* extban, User* user, Chann
continue;
}
- return extban->IsMatch(user, channel, xbvalue) != inverted ? MOD_RES_DENY : MOD_RES_PASSTHRU;
+ // For a non-inverted (regular) extban we want to match but for an
+ // inverted extban we want to not match.
+ if (extban->IsMatch(user, channel, xbvalue) != inverted)
+ return MOD_RES_DENY;
}
return MOD_RES_PASSTHRU;
}