From 01a1d67dd1406f99821c7c5f6e491373bbd96c74 Mon Sep 17 00:00:00 2001 From: attilamolnar Date: Sun, 2 Dec 2012 23:07:13 +0100 Subject: m_remove Fix potential desync caused by committing the PART before getting acknowledgement from the target server --- src/modules/m_remove.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/modules') diff --git a/src/modules/m_remove.cpp b/src/modules/m_remove.cpp index 51cbf335a..ffb8f8e55 100644 --- a/src/modules/m_remove.cpp +++ b/src/modules/m_remove.cpp @@ -102,6 +102,10 @@ class RemoveBase : public Command */ if ((!IS_LOCAL(user)) || ((ulevel > VOICE_VALUE) && (ulevel >= tlevel) && (tlevel != 50000))) { + // REMOVE/FPART will be sent to the target's server and it will reply with a PART (or do nothing if it doesn't understand the command) + if (!IS_LOCAL(target)) + return CMD_SUCCESS; + std::string reasonparam; /* If a reason is given, use it */ -- cgit v1.2.3