From 20f43b2fd4505b3d5b32d2d3f345a99a302b2b56 Mon Sep 17 00:00:00 2001 From: AAGaming Date: Thu, 21 Jul 2022 22:02:13 -0400 Subject: fix plugin uninstalling --- backend/browser.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'backend/browser.py') diff --git a/backend/browser.py b/backend/browser.py index df0c478c..e4af503e 100644 --- a/backend/browser.py +++ b/backend/browser.py @@ -45,20 +45,24 @@ class PluginBrowser: def find_plugin_folder(self, name): for folder in listdir(self.plugin_path): - with open(path.join(self.plugin_path, folder, 'plugin.json'), 'r') as f: - plugin = json.load(f) + try: + with open(path.join(self.plugin_path, folder, 'plugin.json'), 'r') as f: + plugin = json.load(f) - if plugin['name'] == name: - return path.join(self.plugin_path, folder) + if plugin['name'] == name: + return path.join(self.plugin_path, folder) + except: + self.log.info("skipping " + folder) async def uninstall_plugin(self, name): tab = await get_tab("SP") - await tab.open_websocket() try: if type(name) != str: data = await name.post() - name = data.get("name") + name = data.get("name", "undefined") + self.log.info("uninstalling " + name) + self.log.info(" at dir " + self.find_plugin_folder(name)) await tab.evaluate_js(f"DeckyPluginLoader.unloadPlugin('{name}')") rmtree(self.find_plugin_folder(name)) except FileNotFoundError: -- cgit v1.2.3