diff --git a/src/connect/protocol_connect/connect_client.py b/src/connect/protocol_connect/connect_client.py index 8fca3dc..0f03769 100644 --- a/src/connect/protocol_connect/connect_client.py +++ b/src/connect/protocol_connect/connect_client.py @@ -702,7 +702,8 @@ async def receive(self, message: Any, abort_event: asyncio.Event | None = None) if error: for key, value in self.response_headers.items(): error.metadata[key] = value - error.metadata.update(self.unmarshaler.trailers.copy()) + + error.metadata.update(self.unmarshaler.trailers.copy()) raise error for key, value in self.unmarshaler.trailers.items(): diff --git a/src/connect/protocol_connect/error_json.py b/src/connect/protocol_connect/error_json.py index 4d29e1c..8cc45ad 100644 --- a/src/connect/protocol_connect/error_json.py +++ b/src/connect/protocol_connect/error_json.py @@ -88,6 +88,7 @@ def error_from_json(obj: dict[str, Any], fallback: ConnectError) -> ConnectError if type_name is None: raise fallback + if value is None: raise fallback