summaryrefslogtreecommitdiff
path: root/src/modes
diff options
context:
space:
mode:
Diffstat (limited to 'src/modes')
-rw-r--r--src/modes/cmode_h.cpp5
-rw-r--r--src/modes/cmode_o.cpp5
-rw-r--r--src/modes/cmode_v.cpp5
3 files changed, 12 insertions, 3 deletions
diff --git a/src/modes/cmode_h.cpp b/src/modes/cmode_h.cpp
index 667402ace..cb1f626b6 100644
--- a/src/modes/cmode_h.cpp
+++ b/src/modes/cmode_h.cpp
@@ -85,7 +85,10 @@ ModeAction ModeChannelHalfOp::OnModeChange(userrec* source, userrec* dest, chanr
* the return value and is always MODEACTION_DENY if the mode is supposed to have
* a parameter.
*/
- return MODEACTION_ALLOW;
+ if (parameter.length())
+ return MODEACTION_ALLOW;
+ else
+ return MODEACTION_DENY;
}
std::string ModeChannelHalfOp::AddHalfOp(userrec *user,const char* dest,chanrec *chan,int status)
diff --git a/src/modes/cmode_o.cpp b/src/modes/cmode_o.cpp
index b9fb0208b..a66818005 100644
--- a/src/modes/cmode_o.cpp
+++ b/src/modes/cmode_o.cpp
@@ -77,7 +77,10 @@ ModeAction ModeChannelOp::OnModeChange(userrec* source, userrec* dest, chanrec*
* the return value and is always MODEACTION_DENY if the mode is supposed to have
* a parameter.
*/
- return MODEACTION_ALLOW;
+ if (parameter.length())
+ return MODEACTION_ALLOW;
+ else
+ return MODEACTION_DENY;
}
std::string ModeChannelOp::AddOp(userrec *user,const char* dest,chanrec *chan,int status)
diff --git a/src/modes/cmode_v.cpp b/src/modes/cmode_v.cpp
index 9fd5df7bd..497c4856f 100644
--- a/src/modes/cmode_v.cpp
+++ b/src/modes/cmode_v.cpp
@@ -76,7 +76,10 @@ ModeAction ModeChannelVoice::OnModeChange(userrec* source, userrec* dest, chanre
* the return value and is always MODEACTION_DENY if the mode is supposed to have
* a parameter.
*/
- return MODEACTION_ALLOW;
+ if (parameter.length())
+ return MODEACTION_ALLOW;
+ else
+ return MODEACTION_DENY;
}
std::string ModeChannelVoice::AddVoice(userrec *user,const char* dest,chanrec *chan,int status)