From b02e7a74fc938e9b95be076810d3f084bd2fd20a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=B3ra=20Kocsis?= <dora@dynare.org> Date: Thu, 27 Feb 2020 11:47:17 +0100 Subject: [PATCH] fix bug in mapping nested options in set_command_option In case of nested options (eg: estimation.moments_posterior_density.indicator) the syntax: options_.(gui_auxiliary.command_option_mapping(name)) failed to populate the options_ field. --- src/+gui_auxiliary/set_command_option.m | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/+gui_auxiliary/set_command_option.m b/src/+gui_auxiliary/set_command_option.m index 77745f7..ac7f9ae 100644 --- a/src/+gui_auxiliary/set_command_option.m +++ b/src/+gui_auxiliary/set_command_option.m @@ -108,14 +108,19 @@ try elseif value == 4 options_.(gui_auxiliary.command_option_mapping(name)) = 'FILENAME'; end - + case 'mcmc_jumping_covariance_file' if ~isempty(value) && strcmp(options_.MCMC_jumping_covariance, 'FILENAME') options_.MCMC_jumping_covariance = strrep(value, '.mat', ''); end otherwise - options_.(gui_auxiliary.command_option_mapping(name)) = value; + if isnumeric(value) + eval(['options_.' gui_auxiliary.command_option_mapping(name) '=' num2str(value) ';']); + else + eval_expr = sprintf("options_.%s='%s';", gui_auxiliary.command_option_mapping(name), value); + eval(eval_expr); + end end catch status = 0; -- GitLab