diff --git a/modules/modperl/module.h b/modules/modperl/module.h index 92bb658e..fc797c1c 100644 --- a/modules/modperl/module.h +++ b/modules/modperl/module.h @@ -30,8 +30,8 @@ class CPerlModule : public CModule { VWebSubPages* _GetSubPages(); public: CPerlModule(CUser* pUser, CIRCNetwork* pNetwork, const CString& sModName, const CString& sDataPath, - SV* perlObj) - : CModule(nullptr, pUser, pNetwork, sModName, sDataPath) { + CModInfo::EModuleType eType, SV* perlObj) + : CModule(nullptr, pUser, pNetwork, sModName, sDataPath, eType) { m_perlObj = newSVsv(perlObj); } SV* GetPerlObj() { diff --git a/modules/modperl/startup.pl b/modules/modperl/startup.pl index 55d095ea..0a5e0f45 100644 --- a/modules/modperl/startup.pl +++ b/modules/modperl/startup.pl @@ -111,7 +111,7 @@ sub LoadModule { $modrefcount{$modname}++; $datapath = $datapath->GetPerlStr; $datapath =~ s/\.pm$//; - my $cmod = ZNC::CPerlModule->new($user, $network, $modname, $datapath, $pmod); + my $cmod = ZNC::CPerlModule->new($user, $network, $modname, $datapath, $type, $pmod); my %nv; tie %nv, 'ZNC::ModuleNV', $cmod; $pmod->{_cmod} = $cmod; @@ -119,7 +119,6 @@ sub LoadModule { $cmod->SetDescription($pmod->description); $cmod->SetArgs($args); $cmod->SetModPath($modpath); - $cmod->SetType($type); push @allmods, $pmod; $container->push_back($cmod); my $x = ''; diff --git a/modules/modpython/module.h b/modules/modpython/module.h index 0a3e2b81..caa40f4f 100644 --- a/modules/modpython/module.h +++ b/modules/modpython/module.h @@ -32,8 +32,8 @@ class CPyModule : public CModule { VWebSubPages* _GetSubPages(); public: CPyModule(CUser* pUser, CIRCNetwork* pNetwork, const CString& sModName, const CString& sDataPath, - PyObject* pyObj, CModPython* pModPython) - : CModule(nullptr, pUser, pNetwork, sModName, sDataPath) { + CModInfo::EModuleType eType, PyObject* pyObj, CModPython* pModPython) + : CModule(nullptr, pUser, pNetwork, sModName, sDataPath, eType) { m_pyObj = pyObj; Py_INCREF(pyObj); m_pModPython = pModPython; @@ -145,8 +145,8 @@ static inline CPyModule* AsPyModule(CModule* p) { return dynamic_cast(p); } -inline CPyModule* CreatePyModule(CUser* pUser, CIRCNetwork* pNetwork, const CString& sModName, const CString& sDataPath, PyObject* pyObj, CModPython* pModPython) { - return new CPyModule(pUser, pNetwork, sModName, sDataPath, pyObj, pModPython); +inline CPyModule* CreatePyModule(CUser* pUser, CIRCNetwork* pNetwork, const CString& sModName, const CString& sDataPath, CModInfo::EModuleType eType, PyObject* pyObj, CModPython* pModPython) { + return new CPyModule(pUser, pNetwork, sModName, sDataPath, eType, pyObj, pModPython); } class CPyTimer : public CTimer { diff --git a/modules/modpython/znc.py b/modules/modpython/znc.py index cd4de4b3..0b6a1217 100644 --- a/modules/modpython/znc.py +++ b/modules/modpython/znc.py @@ -538,12 +538,11 @@ def load_module(modname, args, module_type, user, network, retmsg, modpython): return 1 module = cl() - module._cmod = CreatePyModule(user, network, modname, datapath, module, modpython) + module._cmod = CreatePyModule(user, network, modname, datapath, module_type, module, modpython) module.nv = ModuleNV(module._cmod) module.SetDescription(cl.description) module.SetArgs(args) module.SetModPath(pymodule.__file__) - module.SetType(module_type) _py_modules.add(module) if module_type == CModInfo.UserModule: