diff options
| author | suchmememanyskill <38142618+suchmememanyskill@users.noreply.github.com> | 2023-06-19 15:24:24 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-06-19 06:24:24 -0700 |
| commit | 4029a436374f12bd558a5bac1eb7d35f192a9fea (patch) | |
| tree | 65085084c886e793f97fc0a160e25a6e75903bb5 /backend | |
| parent | 57f4555350c669e4cb098b48691975be79838468 (diff) | |
| download | decky-loader-4029a436374f12bd558a5bac1eb7d35f192a9fea.tar.gz decky-loader-4029a436374f12bd558a5bac1eb7d35f192a9fea.zip | |
Fix uninstalling plugins (#485)
* Fix bad debug print statement in uninstall plugin
* Safely remove element from hidden plugin/plugin order list
Diffstat (limited to 'backend')
| -rw-r--r-- | backend/browser.py | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/backend/browser.py b/backend/browser.py index ab71a89d..6fa85466 100644 --- a/backend/browser.py +++ b/backend/browser.py @@ -129,7 +129,7 @@ class PluginBrowser: logger.warning(f"Plugin {name} not installed, skipping uninstallation") except Exception as e: logger.error(f"Plugin {name} in {plugin_dir} was not uninstalled") - logger.error(f"Error at %s", exc_info=e) + logger.error(f"Error at {str(e)}", exc_info=e) if self.loader.watcher: self.loader.watcher.disabled = False @@ -239,10 +239,15 @@ class PluginBrowser: name (string): The name of the plugin """ hidden_plugins = self.settings.getSetting("hiddenPlugins", []) - hidden_plugins.remove(name) - self.settings.setSetting("hiddenPlugins", hidden_plugins) + if name in hidden_plugins: + hidden_plugins.remove(name) + self.settings.setSetting("hiddenPlugins", hidden_plugins) - plugin_order = self.settings.getSetting("pluginOrder") - plugin_order.remove(name) - self.settings.setSetting("pluginOrder", plugin_order) + + plugin_order = self.settings.getSetting("pluginOrder", []) + + if name in plugin_order: + plugin_order.remove(name) + self.settings.setSetting("pluginOrder", plugin_order) + logger.debug("Removed any settings for plugin %s", name) |
