Avoid attr-err when `._ipc_msg==None`
Seems this can happen in particular when we raise a `MessageTypeError` on the sender side of a `Context`, since there isn't any msg relayed from the other side (though i'm wondering if MTE should derive from RAE then considering this case?). Means `RemoteActorError.boxed_type = None` in such cases instead of raising an attr-error for the `None.boxed_type_str`.ext_type_plds
parent
92e1a2313d
commit
58a818472c
|
@ -432,9 +432,13 @@ class RemoteActorError(Exception):
|
|||
Error type boxed by last actor IPC hop.
|
||||
|
||||
'''
|
||||
if self._boxed_type is None:
|
||||
if (
|
||||
self._boxed_type is None
|
||||
and
|
||||
(ipc_msg := self._ipc_msg)
|
||||
):
|
||||
self._boxed_type = get_err_type(
|
||||
self._ipc_msg.boxed_type_str
|
||||
ipc_msg.boxed_type_str
|
||||
)
|
||||
|
||||
return self._boxed_type
|
||||
|
@ -1143,6 +1147,8 @@ def unpack_error(
|
|||
which is the responsibilitiy of the caller.
|
||||
|
||||
'''
|
||||
# XXX, apparently we pass all sorts of msgs here?
|
||||
# kinda odd but seems like maybe they shouldn't be?
|
||||
if not isinstance(msg, Error):
|
||||
return None
|
||||
|
||||
|
|
Loading…
Reference in New Issue