diff --git a/pymatbridge/matlab/util/pymat_eval.m b/pymatbridge/matlab/util/pymat_eval.m index f38856f..a564be1 100644 --- a/pymatbridge/matlab/util/pymat_eval.m +++ b/pymatbridge/matlab/util/pymat_eval.m @@ -35,10 +35,13 @@ rehash if iscell(req.func_args) - [resp{1:req.nargout}] = feval(req.func_name, req.func_args{:}); + func_args = req.func_args; else - [resp{1:req.nargout}] = feval(req.func_name, req.func_args); + % If we don't have a cell, the JSON decoder has managed to merge + % everything into an array, which we don't want + func_args = num2cell(req.func_args, 1); end + [resp{1:req.nargout}] = feval(req.func_name, func_args{:}); if req.nargout == 1 response.result = resp{1};