forked from M-Labs/artiq
1
0
Fork 0

Fix returning tuples of lists of arrays from RPCs

When serialising a list of objects `_send_rpc_value` makes a copy of the
upcoming tags to pass repeatedly to the recursive call. Then uses
`_skip_rpc_value` to skip over the tags that should have been processed.
This didn't handle numpy arrays so, after processing a list of arrays it
got out of sync and failed.

Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
This commit is contained in:
Michael Birtwell 2022-06-14 15:27:53 +01:00 committed by Sébastien Bourdeauducq
parent e47834d82e
commit 69c4026d2b
1 changed files with 3 additions and 0 deletions

View File

@ -418,6 +418,9 @@ class CommKernel:
self._skip_rpc_value(tags) self._skip_rpc_value(tags)
elif tag == "r": elif tag == "r":
self._skip_rpc_value(tags) self._skip_rpc_value(tags)
elif tag == "a":
_ndims = tags.pop(0)
self._skip_rpc_value(tags)
else: else:
pass pass