From 8fb6d4cdb43deac1028ce3f3b9d00fa0d7f89b1c Mon Sep 17 00:00:00 2001 From: whitequark Date: Tue, 29 Dec 2015 02:54:34 +0800 Subject: [PATCH] coredevice.comm_generic: handle RPC default args correctly. --- artiq/coredevice/comm_generic.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/artiq/coredevice/comm_generic.py b/artiq/coredevice/comm_generic.py index 1d3d69f2a..8c86b27b9 100644 --- a/artiq/coredevice/comm_generic.py +++ b/artiq/coredevice/comm_generic.py @@ -341,12 +341,14 @@ class CommGeneric: def _receive_rpc_args(self, object_map, defaults): args = [] + default_arg_num = 0 while True: value = self._receive_rpc_value(object_map) if value is self._rpc_sentinel: return args elif value is self._rpc_undefined: - args.append(defaults[len(args)]) + args.append(defaults[default_arg_num]) + default_arg_num += 1 else: args.append(value)