summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJackmcbarn <jackmcbarn@jackmcbarn.no-ip.org>2011-02-14 11:02:09 -0500
committerJackmcbarn <jackmcbarn@jackmcbarn.no-ip.org>2011-02-14 11:07:12 -0500
commitedc538a3c8ff4a4b1b913bfd9f07f5cc989ff0e2 (patch)
tree24d5872e91478934eddfccbdcaaf7d1b1f1d17eb /src
parent276caaad04ea6ca3618ede83df7102a482be6812 (diff)
Fix bug #122
Diffstat (limited to 'src')
-rw-r--r--src/modules/m_cloaking.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/modules/m_cloaking.cpp b/src/modules/m_cloaking.cpp
index 5b1b73f37..ba7005396 100644
--- a/src/modules/m_cloaking.cpp
+++ b/src/modules/m_cloaking.cpp
@@ -106,8 +106,8 @@ class CloakUser : public ModeHandler
/* User is removing the mode, so restore their real host
* and make it match the displayed one.
*/
- user->ChangeDisplayedHost(user->host.c_str());
user->SetMode('x',false);
+ user->ChangeDisplayedHost(user->host.c_str());
return MODEACTION_ALLOW;
}
}
@@ -365,7 +365,11 @@ class ModuleCloaking : public Module
// mode change, we will call SetMode back to true AFTER the host change is done.
void OnChangeHost(User* u, const std::string& host)
{
- u->SetMode('x', false);
+ if(u->IsModeSet('x'))
+ {
+ u->SetMode('x', false);
+ u->WriteServ("MODE %s -x", u->nick.c_str());
+ }
}
~ModuleCloaking()