mirror of
https://github.com/znc/znc.git
synced 2026-04-30 18:42:25 +02:00
Fix #1347 for 1.7 branch.
Commit 51fb6f09f4b8065b82f9a0ab1d1702ad8998f389 in 1.6.x branch has more details.
This commit is contained in:
@@ -30,9 +30,10 @@ using std::vector;
|
||||
CModule* pModule = nullptr; \
|
||||
if (NETWORK && (pModule = (NETWORK)->GetModules().FindModule(MOD))) { \
|
||||
try { \
|
||||
CClient* pOldClient = pModule->GetClient(); \
|
||||
pModule->SetClient(CLIENT); \
|
||||
pModule->FUNC; \
|
||||
pModule->SetClient(nullptr); \
|
||||
pModule->SetClient(pOldClient); \
|
||||
} catch (const CModule::EModException& e) { \
|
||||
if (e == CModule::UNLOAD) { \
|
||||
(NETWORK)->GetModules().UnloadModule(MOD); \
|
||||
@@ -40,11 +41,13 @@ using std::vector;
|
||||
} \
|
||||
} else if ((pModule = (USER)->GetModules().FindModule(MOD))) { \
|
||||
try { \
|
||||
CClient* pOldClient = pModule->GetClient(); \
|
||||
CIRCNetwork* pOldNetwork = pModule->GetNetwork(); \
|
||||
pModule->SetClient(CLIENT); \
|
||||
pModule->SetNetwork(NETWORK); \
|
||||
pModule->FUNC; \
|
||||
pModule->SetClient(nullptr); \
|
||||
pModule->SetNetwork(nullptr); \
|
||||
pModule->SetClient(pOldClient); \
|
||||
pModule->SetNetwork(pOldNetwork); \
|
||||
} catch (const CModule::EModException& e) { \
|
||||
if (e == CModule::UNLOAD) { \
|
||||
(USER)->GetModules().UnloadModule(MOD); \
|
||||
@@ -52,13 +55,16 @@ using std::vector;
|
||||
} \
|
||||
} else if ((pModule = CZNC::Get().GetModules().FindModule(MOD))) { \
|
||||
try { \
|
||||
CClient* pOldClient = pModule->GetClient(); \
|
||||
CIRCNetwork* pOldNetwork = pModule->GetNetwork(); \
|
||||
CUser* pOldUser = pModule->GetUser(); \
|
||||
pModule->SetClient(CLIENT); \
|
||||
pModule->SetNetwork(NETWORK); \
|
||||
pModule->SetUser(USER); \
|
||||
pModule->FUNC; \
|
||||
pModule->SetClient(nullptr); \
|
||||
pModule->SetNetwork(nullptr); \
|
||||
pModule->SetUser(nullptr); \
|
||||
pModule->SetClient(pOldClient); \
|
||||
pModule->SetNetwork(pOldNetwork); \
|
||||
pModule->SetUser(pOldUser); \
|
||||
} catch (const CModule::EModException& e) { \
|
||||
if (e == CModule::UNLOAD) { \
|
||||
CZNC::Get().GetModules().UnloadModule(MOD); \
|
||||
|
||||
Reference in New Issue
Block a user