Fix plugins running twice in autoreload mode

Fixes #2817
This commit is contained in:
shniubobo 2020-10-31 20:34:45 +08:00
commit 587e1a4ad8
No known key found for this signature in database
GPG key ID: 7EF929CD0B45522D
2 changed files with 14 additions and 0 deletions

View file

@ -53,6 +53,9 @@ def load_legacy_plugin(plugin, plugin_paths):
if spec is None:
raise ImportError('Cannot import plugin `{}`'.format(plugin))
else:
# Avoid loading the same plugin twice
if spec.name in sys.modules:
return sys.modules[spec.name]
# create module object from spec
mod = importlib.util.module_from_spec(spec)
# place it into sys.modules cache