From 9f82e6f5bcddf57cfab1452428f588831cb481ef Mon Sep 17 00:00:00 2001 From: Beau Barker Date: Wed, 30 Jun 2021 09:09:44 +1000 Subject: [PATCH] Catch any json deserializer exception --- jsonrpcserver/dispatcher.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/jsonrpcserver/dispatcher.py b/jsonrpcserver/dispatcher.py index 6bb17e4..3a71b6b 100644 --- a/jsonrpcserver/dispatcher.py +++ b/jsonrpcserver/dispatcher.py @@ -182,7 +182,9 @@ def dispatch_to_response_pure( try: try: deserialized = deserializer(request) - except json.JSONDecodeError as exc: + # We don't know which deserializer will be used, so the specific exception that + # will be raised is unknown. Any exception is a parse error. + except Exception as exc: return ParseErrorResponse(str(exc)) try: validate(deserialized)