mirror of
https://github.com/inspircd/inspircd.git
synced 2025-03-11 19:49:02 -04:00
Remove +o from users on deoper, plausible fix for bug #653 reported by Ankit. Let me know if it's still b0rked, please :)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10940 e03df62e-2008-0410-955e-edbf42e46eb7
This commit is contained in:
parent
41bcf2c5a4
commit
67b482682e
@ -839,6 +839,7 @@ void User::UnOper()
|
|||||||
*/
|
*/
|
||||||
this->oper.clear();
|
this->oper.clear();
|
||||||
|
|
||||||
|
|
||||||
/* Remove all oper only modes from the user when the deoper - Bug #466*/
|
/* Remove all oper only modes from the user when the deoper - Bug #466*/
|
||||||
std::string moderemove("-");
|
std::string moderemove("-");
|
||||||
|
|
||||||
@ -849,12 +850,13 @@ void User::UnOper()
|
|||||||
moderemove += letter;
|
moderemove += letter;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
std::vector<std::string> parameters;
|
std::vector<std::string> parameters;
|
||||||
parameters.push_back(this->nick);
|
parameters.push_back(this->nick);
|
||||||
parameters.push_back(moderemove);
|
parameters.push_back(moderemove);
|
||||||
|
|
||||||
ServerInstance->Parser->CallHandler("MODE", parameters, this);
|
ServerInstance->Parser->CallHandler("MODE", parameters, this);
|
||||||
|
|
||||||
/* remove the user from the oper list. Will remove multiple entries as a safeguard against bug #404 */
|
/* remove the user from the oper list. Will remove multiple entries as a safeguard against bug #404 */
|
||||||
ServerInstance->Users->all_opers.remove(this);
|
ServerInstance->Users->all_opers.remove(this);
|
||||||
|
|
||||||
@ -872,6 +874,7 @@ void User::UnOper()
|
|||||||
|
|
||||||
AllowedUserModes.reset();
|
AllowedUserModes.reset();
|
||||||
AllowedChanModes.reset();
|
AllowedChanModes.reset();
|
||||||
|
this->modes[UM_OPERATOR] = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user