From 8c58e7a76aad01bca2849630b652d4cb7d7e2034 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Tue, 16 Apr 2019 17:44:00 +1000 Subject: [PATCH] support conflicts when downloading from AnkiWeb users can now upload .ankiaddon files as well - package/name remains defined by the add-on listing as before --- aqt/addons.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/aqt/addons.py b/aqt/addons.py index ff94f0836..e974d42db 100644 --- a/aqt/addons.py +++ b/aqt/addons.py @@ -179,15 +179,18 @@ and have been disabled: %(found)s") % dict(name=self.addonName(dir), found=addon def install(self, file, manifest=None): """Install add-on from path or file-like object. Metadata is read - from the manifest file by default, but this may me bypassed - by supplying a 'manifest' dictionary""" + from the manifest file, with keys overriden by supplying a 'manifest' + dictionary""" try: zfile = ZipFile(file) except zipfile.BadZipfile: return False, "zip" with zfile: - manifest = manifest or self._readManifestFile(zfile) + file_manifest = self._readManifestFile(zfile) + if manifest: + file_manifest.update(manifest) + manifest = file_manifest if not manifest: return False, "manifest" package = manifest["package"]