fixed amb953 - blank overrides did not strip flags
--HG-- extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%401441
This commit is contained in:
parent
9366bad594
commit
78e0de7a5b
@ -349,7 +349,7 @@ void AdminCache::AddCommandOverride(const char *cmd, OverrideType type, FlagBits
|
||||
|
||||
sm_trie_insert(pTrie, cmd, (void *)(unsigned int)flags);
|
||||
|
||||
g_ConCmds.UpdateAdminCmdFlags(cmd, type, flags);
|
||||
g_ConCmds.UpdateAdminCmdFlags(cmd, type, flags, false);
|
||||
}
|
||||
|
||||
bool AdminCache::GetCommandOverride(const char *cmd, OverrideType type, FlagBits *pFlags)
|
||||
@ -397,7 +397,7 @@ void AdminCache::_UnsetCommandGroupOverride(const char *group)
|
||||
|
||||
sm_trie_delete(m_pCmdGrpOverrides, group);
|
||||
|
||||
g_ConCmds.UpdateAdminCmdFlags(group, Override_CommandGroup, 0);
|
||||
g_ConCmds.UpdateAdminCmdFlags(group, Override_CommandGroup, 0, true);
|
||||
}
|
||||
|
||||
void AdminCache::_UnsetCommandOverride(const char *cmd)
|
||||
@ -409,7 +409,7 @@ void AdminCache::_UnsetCommandOverride(const char *cmd)
|
||||
|
||||
sm_trie_delete(m_pCmdOverrides, cmd);
|
||||
|
||||
g_ConCmds.UpdateAdminCmdFlags(cmd, Override_Command, 0);
|
||||
g_ConCmds.UpdateAdminCmdFlags(cmd, Override_Command, 0, true);
|
||||
}
|
||||
|
||||
void AdminCache::DumpCommandOverrideCache(OverrideType type)
|
||||
|
@ -648,7 +648,7 @@ void ConCmdManager::AddToCmdList(ConCmdInfo *info)
|
||||
}
|
||||
}
|
||||
|
||||
void ConCmdManager::UpdateAdminCmdFlags(const char *cmd, OverrideType type, FlagBits bits)
|
||||
void ConCmdManager::UpdateAdminCmdFlags(const char *cmd, OverrideType type, FlagBits bits, bool remove)
|
||||
{
|
||||
ConCmdInfo *pInfo;
|
||||
|
||||
@ -667,7 +667,7 @@ void ConCmdManager::UpdateAdminCmdFlags(const char *cmd, OverrideType type, Flag
|
||||
pHook = (*iter);
|
||||
if (pHook->pAdmin)
|
||||
{
|
||||
if (bits)
|
||||
if (!remove)
|
||||
{
|
||||
pHook->pAdmin->eflags = bits;
|
||||
} else {
|
||||
@ -698,7 +698,7 @@ void ConCmdManager::UpdateAdminCmdFlags(const char *cmd, OverrideType type, Flag
|
||||
pHook = (*citer);
|
||||
if (pHook->pAdmin && pHook->pAdmin->cmdGrpId == grpid)
|
||||
{
|
||||
if (bits)
|
||||
if (remove)
|
||||
{
|
||||
pHook->pAdmin->eflags = bits;
|
||||
} else {
|
||||
|
@ -117,7 +117,7 @@ public:
|
||||
const char *description,
|
||||
int flags);
|
||||
ResultType DispatchClientCommand(int client, const char *cmd, int args, ResultType type);
|
||||
void UpdateAdminCmdFlags(const char *cmd, OverrideType type, FlagBits bits);
|
||||
void UpdateAdminCmdFlags(const char *cmd, OverrideType type, FlagBits bits, bool remove);
|
||||
bool LookForSourceModCommand(const char *cmd);
|
||||
bool LookForCommandAdminFlags(const char *cmd, FlagBits *pFlags);
|
||||
bool CheckCommandAccess(int client, const char *cmd, FlagBits flags);
|
||||
|
Loading…
Reference in New Issue
Block a user