Add plugins to end of sys.path instead of start

This gives same semantics for frozen and non-frozen builds.
This commit is contained in:
Kovid Goyal 2021-04-15 08:07:32 +05:30
parent 3dd9598139
commit 745bbccd93
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

View File

@ -300,14 +300,14 @@ class Plugin(object): # {{{
if not zip_safe:
break
if zip_safe:
sys.path.insert(0, self.plugin_path)
sys.path.append(self.plugin_path)
self.sys_insertion_path = self.plugin_path
else:
from calibre.ptempfile import TemporaryDirectory
self._sys_insertion_tdir = TemporaryDirectory('plugin_unzip')
self.sys_insertion_path = self._sys_insertion_tdir.__enter__(*args)
zf.extractall(self.sys_insertion_path)
sys.path.insert(0, self.sys_insertion_path)
sys.path.append(self.sys_insertion_path)
def __exit__(self, *args):
ip, it = getattr(self, 'sys_insertion_path', None), getattr(self,