on master help sign in
[enh] stop searx when an engine raise an SyntaxError exception (#2177)
3397382Alexandre Flament
searx/engines/__init__.py+3
@@ -74,6 +74,9 @@ def load_engine(engine_data):
74
74
75 try:
75 try:
76 engine = load_module(engine_module + '.py', engine_dir)
76 engine = load_module(engine_module + '.py', engine_dir)
77+ except (SyntaxError, KeyboardInterrupt, SystemExit, SystemError, ImportError, RuntimeError) as e:
78+ logger.exception('Fatal exception in engine "{}"'.format(engine_module))
79+ sys.exit(1)
77 except:
80 except:
78 logger.exception('Cannot load engine "{}"'.format(engine_module))
81 logger.exception('Cannot load engine "{}"'.format(engine_module))
79 return None
82 return None