summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--qutebrowser/browser/greasemonkey.py17
1 files changed, 11 insertions, 6 deletions
diff --git a/qutebrowser/browser/greasemonkey.py b/qutebrowser/browser/greasemonkey.py
index 5abb9a137..dc7beaaf6 100644
--- a/qutebrowser/browser/greasemonkey.py
+++ b/qutebrowser/browser/greasemonkey.py
@@ -310,12 +310,17 @@ class GreasemonkeyManager(QObject):
if not os.path.isfile(script_filename):
continue
script_path = os.path.join(scripts_dir, script_filename)
- with open(script_path, encoding='utf-8-sig') as script_file:
- script = GreasemonkeyScript.parse(script_file.read(),
- script_filename)
- assert script.name, script
- self.add_script(script, force)
- scripts.append(script)
+
+ try:
+ with open(script_path, encoding='utf-8-sig') as script_file:
+ script = GreasemonkeyScript.parse(script_file.read(),
+ script_filename)
+ assert script.name, script
+ self.add_script(script, force)
+ scripts.append(script)
+ except OSError as e:
+ message.error(
+ f"Greasemonkey script failed to load: {script_filename} {e}")
self.scripts_reloaded.emit()
return sorted(scripts, key=str)