X-Git-Url: https://jfr.im/git/erebus.git/blobdiff_plain/8ba566068fc22454dc1ec3d296b85f35aa7aec17..c889fbb1f64a7eac7de813eb24326139c58c7b18:/ctlmod.py diff --git a/ctlmod.py b/ctlmod.py index 8cfa7d0..db8a5b8 100644 --- a/ctlmod.py +++ b/ctlmod.py @@ -12,12 +12,15 @@ def modhas(modname, attname): return getattr(modules[modname], attname, None) is def load(parent, modname): if not isloaded(modname): + sys.path.insert(0, 'modules') try: mod = __import__(modname) reload(mod) #in case it's been previously loaded. except BaseException as e: #we don't want even sys.exit() to crash us (in case of malicious module) so use BaseException return modlib.error(e) - + finally: + del sys.path[0] #remove ./modules from path, in case there's a name conflict + if not hasattr(mod, 'modinfo'): return modlib.error('no modinfo')