diff --git a/src/Ui/UiWebsocket.py b/src/Ui/UiWebsocket.py index 5e6a41b9..e0dbf7df 100644 --- a/src/Ui/UiWebsocket.py +++ b/src/Ui/UiWebsocket.py @@ -16,7 +16,7 @@ from util import QueryJson, RateLimit from Plugin import PluginManager from Translate import translate as _ from util import helper - +from Content.ContentManager import VerifyError, SignError @PluginManager.acceptPlugins class UiWebsocket(object): @@ -403,11 +403,16 @@ class UiWebsocket(object): # Sign using private key sent by user try: signed = site.content_manager.sign(inner_path, privatekey, extend=extend, update_changed_files=update_changed_files, remove_missing_optional=remove_missing_optional) - except Exception, err: + except (VerifyError, SignError) as err: self.cmd("notification", ["error", _["Content signing failed"] + "
%s" % err]) self.response(to, {"error": "Site sign failed: %s" % err}) self.log.error("Site sign failed: %s: %s" % (inner_path, Debug.formatException(err))) return + except Exception as err: + self.cmd("notification", ["error", _["Content signing error"] + "
%s" % Debug.formatException(err)]) + self.response(to, {"error": "Site sign error: %s" % Debug.formatException(err)}) + self.log.error("Site sign error: %s: %s" % (inner_path, Debug.formatException(err))) + return site.content_manager.loadContent(inner_path, add_bad_files=False) # Load new content.json, ignore errors